我的表格中包含MasName
类型的列nvarchar(100)
。我正在使用SQL Server 2012和Entity Framework 6来处理数据库。我有DetailsView,我总是绑定一个相关的记录:
<asp:DetailsView ID="masDetailView" runat="server" AutoGenerateRows="False"
SelectMethod="GetMas" UpdateMethod="UpdateMas" ItemType="NSMAS.DAL.Mas"
AutoGenerateEditButton="True">
<Fields>
<asp:TemplateField>
<ItemTemplate>
<asp:Label runat="server" ID="nameLbl" Text='<%#: Item.MasName %>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="nameEdit" runat="server" Text='<%#: Item.MasName %>'></asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>
<%--other columns--%>
绑定到标签nameLbl
的文字正确显示:Hříběcí hory
,但是当我点击自动生成的修改按钮时,文字被绑定到TextBox
nameEdit
(用于编辑条目),文字是:Hříběcí hory
。
哪里可能有问题?我可以为所有记录修复此问题,还是必须为每个TextBox设置编码(我不知道如何在代码隐藏中绑定文本)
修改
所以我已将Text='<%#: Item.MasName %>'
改写为Text='<%# Item.MasName %>'
,现在它可以正常工作了。有人告诉我,当我访问这样的数据时,在:
之后使用<%#
会更好,但我找不到任何关于这件事情的文章。