是否可以调用C#模型函数中的System.Web.HttpContext.Current.Request.Url
本文关键字:Web System HttpContext Current Url Request 调用 函数 模型 是否 | 更新日期: 2023-09-27 18:30:03
我希望在我的C#代码(模型函数)中使用asp.net mvc域。我试图在字符串上调用这个函数,但没有成功。
string domain = "" + System.Web.HttpContext.Current.Request.Url;
当我试图在控制器的actionresult中调用same时,这就起作用了,但在c#模型中不起作用。
我希望上下文能让它起作用,但它没有起作用。
有人请解释一下我是否还能用其他东西。我想做的是获取url,我不想每次调用都传递url(域)表单。
HttpContext.Current
只有在现有HTTP上下文中执行代码时才能工作。例如,如果您试图在单元测试中执行此代码,则此代码将返回null。在模型中依赖任何HttpContext特定的东西是非常糟糕的做法。这个属性可以在您的控制器中设置(在那里您可以访问HttpContext),然后将模型传递到DAL和服务层,在那里属性已经被填充。
根据您的上下文/模型,它可能不可用。话虽如此,您可以将上下文或至少url作为参数传递给需要的模型。