这是否可以在C#Models函数中调用System.Web.HttpContext.Current.Request.Url?

这是否可以在C#Models函数中调用System.Web.HttpContext.Current.Request.Url?,c#,asp.net-mvc,url,C#,Asp.net Mvc,Url,我希望asp.net mvc域包含在我的C#代码(模型函数)中。我试图在字符串上调用此函数,但它不起作用 string domain = "" + System.Web.HttpContext.Current.Request.Url; 当我试图在控制器的actionresult中调用相同的函数时,这是可行的,但在c#模型中它不起作用 我希望上下文能使它起作用,但它没有起作用 string domain = "" + System.Web.HttpContext.Current.Reques

我希望asp.net mvc域包含在我的C#代码(模型函数)中。我试图在字符串上调用此函数,但它不起作用

 string domain = "" + System.Web.HttpContext.Current.Request.Url;
当我试图在控制器的actionresult中调用相同的函数时,这是可行的,但在c#模型中它不起作用

我希望上下文能使它起作用,但它没有起作用

 string domain = "" + System.Web.HttpContext.Current.Request.Url;

如果还有什么我可以用的,请给我解释一下。我想做的是获取url,我不想每次调用都传递url(域)。

HttpContext。当前的
仅在现有HTTP上下文中执行代码时才起作用。例如,如果您试图在单元测试中执行该代码,则该代码将返回null。在模型中依赖任何特定于HttpContext的东西是非常糟糕的做法。可以在控制器(您可以访问HttpContext)中设置此属性,然后将模型传递到DAL和服务层,在这些层中该属性将已填充。

根据您的上下文/模型,该属性可能不可用。也就是说,您可以将上下文或至少url作为参数传递给需要的模型