Mar*_*ark 5 asp.net-mvc html-helper asp.net-mvc-2
我们试图在视图中使用类型安全并使用新的ExpressionInputExtenssion HtmlHelpers,但我们看到一些不一致的结果.我们有一个看起来像这样的视图:
ViewData.Model.FooID = <%= ViewData.Model.FooID %><
Model.FooID = <%= Model.FooID %>
<%= Html.HiddenFor(x=>x.FooID) %>
Run Code Online (Sandbox Code Playgroud)
但是我们在渲染视图中看到的是:
ViewData.Model.FooID = 515b0403-e75b-4bd7-9b60-ef432f39d338
Model.FooID = 515b0403-e75b-4bd7-9b60-ef432f39d338
<input id="FooID" name="FooID" type="hidden" value="" />
Run Code Online (Sandbox Code Playgroud)
我可以手动添加这个:
<input id="FooID" name="FooID" type="hidden" value="<%= Model.FooID %>" />
Run Code Online (Sandbox Code Playgroud)
但是现在我们不再,但令人惊讶的是,当我这样做时,Html.HiddenFor总是具有正确的值.
扩展方法后面的模型绑定器似乎无法将 FoodID 数据类型转换为字符串。您的数据类型是常规 GUID 吗?
我知道这个扩展方法在处理二进制文件时有重载,但我不确定 GUID ....
你尝试过调试它吗?