Pie*_*ant 0 c# asp.net-mvc extension-methods
在我们的ASP.NET MVC项目中,我们有一个HtmlHelper生成静态谷歌地图的扩展方法.
public static MvcHtmlString StaticMap(this HtmlHelper helper, string address, string alt, int width, int height, int zoom)
{
var src = new Uri("http://maps.google.com/maps/api/staticmap?markers=size:mid|color:red|{0}&zoom={1}&size={2}x{3}&maptype=roadmap&sensor=false".FormatInvariant(Uri.EscapeUriString(address), zoom, width, height));
var href = new Uri("http://maps.google.com/maps?f=q&source=s_q&hl=en&q={0}".FormatInvariant(Uri.EscapeUriString(address)));
var img = new TagBuilder("img");
img.MergeAttribute("src", src.ToString());
img.MergeAttribute("alt", alt);
var link = new TagBuilder("a") { InnerHtml = img.ToString() };
link.MergeAttribute("href", href.ToString());
return MvcHtmlString.Create(link.ToString());
}
Run Code Online (Sandbox Code Playgroud)
对于这个新项目,我们还试图保持所有代码分析规则.现在,显然,Visual Studio代码分析表明我们应该删除helper参数,因为它没有被使用.
这让我想知道扩展方法是否应该总是使用扩展对象,如果没有,那么也许它不应该是扩展方法.
有人有指南或解释的链接可以帮助我决定吗?