asp.net-mvc – 在asp.net mvc 3剃刀中识别html助手的问题
发布时间:2020-11-18 10:23:12 所属栏目:asp.Net 来源:互联网
导读:这是我的 Html帮助器的样子: namespace WebApp.WebUI{ public static class HtmlExtensions { public static MvcHtmlString GenerateCaptcha(this HtmlHelper helper, string theme) {
这是我的 Html帮助器的样子: namespace WebApp.WebUI { public static class HtmlExtensions { public static MvcHtmlString GenerateCaptcha(this HtmlHelper helper,string theme) { string publicKey = ConfigurationManager.AppSettings["CaptchaKey_Public"]; string privateKey = ConfigurationManager.AppSettings["CaptchaKey_Private"]; var captchaControl = new Recaptcha.RecaptchaControl { ID = "recaptcha",Theme = theme,PublicKey = publicKey,PrivateKey = privateKey }; var htmlWriter = new HtmlTextWriter(new StringWriter()); captchaControl.RenderControl(htmlWriter); return new MvcHtmlString(htmlWriter.InnerWriter.ToString()); } } } 我在这个视图中尝试使用它: @{ ViewBag.Title = "Register"; } @model WebApp.WebUI.ViewModel.RegisterModel @using (Html.BeginForm("Register","Auth",FormMethod.Post,new { Id = "ERForm" })) { @Html.GenerateCaptcha("clean") } 它给我这个错误: CS1061:’System.Web.Mvc.HtmlHelper< WebApp.WebUI.ViewModel.RegisterModel>‘不包含’GenerateCaptcha’的定义,也没有扩展方法’GenerateCaptcha’接受’System.Web.Mvc.HtmlHelper< WebApp.WebUI.ViewModel.RegisterModel>‘类型的第一个参数.可以找到(您是否缺少一个using指令或程序集引用?) 我究竟做错了什么.我的命名空间是正确的.它不会出现在@Html的智能感知中 解决方法你可以添加:@using WebApp.WebUI 在您的剃须刀视图的顶部. 而且如果你想在许多不同的视图中重复使用这个帮助器,以避免每次添加到< namespaces> / Views / web.config文件的部分: <system.web.webPages.razor> <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory,System.Web.Mvc,Version=3.0.0.0,Culture=neutral,PublicKeyToken=31BF3856AD364E35" /> <pages pageBaseType="System.Web.Mvc.WebViewPage"> <namespaces> <add namespace="System.Web.Mvc" /> <add namespace="System.Web.Mvc.Ajax" /> <add namespace="System.Web.Mvc.Html" /> <add namespace="System.Web.Routing" /> <add namespace="WebApp.WebUI" /> </namespaces> </pages> </system.web.webPages.razor> 这样做后,请确保您重新编译并重新打开“智能感知”的“剃须刀”视图,以便有时间接听. (编辑:鲜蔬坊站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net – ASP:ItemTemplate中的DropDownList:为什么允许
- asp.net-mvc-4 – ASP.NET MVC 4通过ActionLink传递对象变量
- asp.net – web部署工具2.1和web部署3.5有什么区别?哪一个
- 在asp.net中使用加密数据库联接字符串保证数据安全
- asp.net – 在MVC 4.0中使用部分视图中的节
- ASP.NET搜索引擎
- asp.net-core – ASP.Net核心maxUrlLength
- asp.net-mvc – 如何将html5属性和值导入mvc HiddenFor
- asp.net – 防止XSS(跨站脚本)
- 认识ASP.NET配置文件Web.config
推荐文章
站长推荐
- asp.net – 使用JavaScript重新排列的ListBox元素
- asp.net – 访问.NET中的Web服务中的查询字符串(
- asp.net-mvc – 如果用户在int字段中放入非数字字
- asp.net-web-api – ASP身份OAuth令牌 – 我应该
- asp.net-core – 具有取消令牌的自定义AspCore中
- ASP.NET网站攻击:如何回应?
- ASP.NET MVC与Webforms:替换WebForms控件
- ASP.NET虚拟路径映射到另一个不允许的应用程序
- asp.net-mvc – ASP.NET MVC如何实现返回上一页的
- asp.net-mvc – 在MVC命令,优先级和功能问题中授
热点阅读