我有一个扩展方法。任何人都可以帮助我如何用Moq测试这种方法吗?如何使用URLHelp模拟静态类中的静态方法? (Moq)
public static string GetBaseUrl(this UrlHelper urlHelper)
{
Uri contextUri = new Uri(urlHelper.RequestContext.HttpContext.Request.Url, urlHelper.RequestContext.HttpContext.Request.RawUrl);
UriBuilder realmUri = new UriBuilder(contextUri) { Path = urlHelper.RequestContext.HttpContext.Request.ApplicationPath, Query = null, Fragment = null };
string url = realmUri.Uri.AbsoluteUri;
if (url.EndsWith("/"))
{
url = url.Remove(url.Length - 1, 1);
}
return url;
}
非常感谢。
+1:比我的更好的答案。 – TrueWill
非常感谢。 –
关于使用接口在此播客中使用网关模式来分离依赖关系有一个很好的讨论:http://www.slickthought.net/post/2009/04/03/New-Spaghetti-Code-Podcast-ndash3b-Donn -Felker会谈,Mocking.aspx – TrueWill