asp.net-mvc-3 – 在F#中的ViewBag动态对象上设置属性
发布时间:2020-12-04 23:38:01 所属栏目:asp.Net 来源:互联网
导读:我在C#中有这个动作方法: public ActionResult Index() { ViewBag.Message = Hello; return View(); } 而这个观点(Index.cshtml): h2@ViewBag.Message/h2 这会在页面上产生预期的“Hello”. 我想在F#中做控制器.我试过了 type MainContro
|
我在C#中有这个动作方法: public ActionResult Index() {
ViewBag.Message = "Hello";
return View();
}
而这个观点(Index.cshtml): <h2>@ViewBag.Message</h2> 这会在页面上产生预期的“Hello”. 我想在F#中做控制器.我试过了 type MainController() =
inherit Controller()
member x.Index() =
x.ViewBag?Message <- "Hello"
x.View()
这会产生错误消息“未找到方法或对象构造函数’op_DynamicAssignment’”. 我查看了动态操作符的一些F#代码示例,我看不到任何比几页描述和许多代码行短的内容.它们似乎对于这个属性“setter”来说过于笼统. 解决方法ViewBag属性只是一个包装器,它将ViewData集合公开为dynamic类型的属性,因此可以从C#动态访问它(使用属性集语法).你可以使用实现吗?基于DLR做到这一点(见 this discussion at SO),但更容易定义?将数据直接添加到ViewDataDictionary(由ViewData属性公开)的运算符:let (?<-) (viewData:ViewDataDictionary) (name:string) (value:'T) = viewData.Add(name,box value) 然后你应该可以写 x.ViewData?Message <- "Hello" (编辑:南阳站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 在ASP.NET中拒绝用户时,’CustomIdentity’上的Serializati
- asp.net-mvc-2 – 在名称中使用连字符处理MVC2变量
- asp.net – NHibernate – ManagedWebSessionContext和WebS
- asp.net-mvc – TempData在第二个请求后不会被破坏
- asp.net-mvc – 为什么在我的ASP MVC4应用程序中重定向资源
- asp.net – 如何从日历控件中获取所选日期?
- ASP.NET web.config中数据库连接字符串connectionStrings节
- asp.net-mvc-3 – 应该使用HTTP引用来验证还是令牌验证来防
- asp.net-mvc – 如何在asp.net中使用mvc构建购物车?
- asp.net – 是否可以在源代码中使用iframe和localhost地址?
推荐文章
站长推荐
- ASP.NET批量下载文件的方法
- asp.net-mvc – 如何忽略ASP.NET MVC 4中特定Vie
- Asp.NetCore1.1版本去掉project.json后如何打包生
- asp.net – Mocking HttpContext不起作用
- asp.net – 如何使用Fiddler编辑HTTP请求
- 何时在ASP.NET上选择LAMP?
- asp.net-mvc-3 – 如何避免使用MVC3 FileContent
- asp.net-mvc-3 – 在MVC 3.0中重写Html.BeginFor
- asp.net简单生成XML文件的方法
- .net – DNU发布 – 来自MSBuild的no-source
热点阅读
