【问题标题】:Extension method won't show in razor扩展方法不会在剃须刀中显示
【发布时间】:2012-11-10 16:34:51
【问题描述】:

我一直在关注这方面的教程,在过去的一个小时里我一直在努力完成这项工作,但我看不出我的错误在哪里,所以你去吧: 我在一个项目文件中有一个扩展方法:

namespace TomApps.Toolbox.MVC.Security
{
    public static class HtmlExtention
    {
        public static MvcHtmlString GenerateSecureDataControls<TModel, TProperty>(this HtmlHelper<TModel> htmlHelper, Expression<Func<TModel, TProperty>> expression)
        {
...
}}

我输入了我的 webconfig:

<system.web>
    <customErrors defaultRedirect="/Home/Index"
                    mode="On">
      <error statusCode="404" redirect="error" />
    </customErrors>
    <compilation debug="true" targetFramework="4.5" />
    <authentication mode="Forms">
      <forms loginUrl="~/Account/Login" timeout="2880" />
    </authentication>
    <pages controlRenderingCompatibilityVersion="4.0">
      <namespaces>
        <add namespace="System.Web.Helpers" />
        <add namespace="System.Web.Mvc" />
        <add namespace="System.Web.Mvc.Ajax" />
        <add namespace="System.Web.Mvc.Html" />
        <add namespace="System.Web.Optimization" />
        <add namespace="System.Web.Routing" />
        <add namespace="System.Web.WebPages" />
        **<add namespace="TomApps.Toolbox.MVC.Security"/>**
      </namespaces>
      <controls>
        <add assembly="Ext.Net" namespace="Ext.Net" tagPrefix="ext" />
      </controls>
    </pages>

但是,如果我不放

@using TomApps.Toolbox.MVC.Security 

在我看来,我不能使用它:

 @Html.GenerateSecureDataControls(model => model.RoleId)

起初我以为我是因为我的名字有冲突,但我发现我输入了一个错误的扩展名:) 知道出了什么问题吗? 谢谢

【问题讨论】:

    标签: c# asp.net-mvc web-config extension-methods


    【解决方案1】:

    需要在&lt;system.web.webPages.razor&gt;..下面:

    <system.web.webPages.razor>
        <pages pageBaseType="System.Web.Mvc.WebViewPage">
            <namespaces>
                <add namespace="TomApps.Toolbox.MVC.Security"/>
            </namespaces>
        </pages>
    </system.web.webPages.razor>
    

    【讨论】:

    • 天哪,我糟透了...我已经尝试过了,但产生了冲突,所以它不起作用....谢谢!
    • 对不起,它不起作用(或者我没有正确地做到这一点)。但我看到我没有修改正确的 webconfig,我正在更新根 webconfig.. 我在 Views/Web.config 中添加了 并且它立即工作.. (stackoverflow.com/questions/3875207/…)
    猜你喜欢
    • 2020-04-09
    • 1970-01-01
    • 2023-03-17
    • 2021-03-01
    • 1970-01-01
    • 2021-01-05
    • 1970-01-01
    • 2018-08-28
    • 1970-01-01
    相关资源
    最近更新 更多