如何在asp.net中设置unicode文本框的maxlength?

时间:2013-12-22 15:01:36

标签: c# asp.net

在我的应用程序中,我有一个接受unicode字符/非unicode字符的文本框。

如果输入任何unicode字符,则应以最大长度15验证它。

如何区分c#中文本框中输入的普通文本和unicode文本?是否需要任何额外的长度,如 sql server varchar和nvarchar大小各不相同

<asp:TextBox ID=txtInput runat="server" MaxLength="15" TextMode="MultiLine">
</asp:TextBox>

如何针对unicode字符限制文本框的长度? 我是否需要为unicode和非unicode字符串指定单独的最大长度,以使其不超过15?

2 个答案:

答案 0 :(得分:1)

如何区分文本框中输入的普通文本和unicode文本?

string text = txtInput.Text;
foreach (char c in text)
{
    int unicode = c
    if (unicode > 128) 
    Console.WriteLine("character is unicode" + unicode);
}

然后你可以验证你想要的角色或任何东西。

答案 1 :(得分:0)

使用nvarcharvarchar,您不需要为Unicode使用另一个最大长度。

如果使用varchar,则任何Unicode字符都将被视为非Unicode,并且计数不会有所不同。

如果你使用nvarchar,那么任何char都会考虑使用Unicode,并且计数也不会有所不同。