/ / Как да зададете maxlength за текстово поле в Unicode в asp.net? - c #, asp.net

Как да зададете maxlength за текстово поле в Unicode в asp.net? - c #, asp.net

В молбата ми имам текстово поле, което приема символа unicode / non unicode.

Ако въведете някакъв unicode знак, той трябва да го потвърди срещу максималната дължина от 15.

Как мога да разгранича нормален текст и текст в Unicode, въведени в текстовото поле в c #? Независимо дали се нуждае от допълнителна дължина, например Размерите на сървъра varchar и nvarchar в сървъра на SQL се различават.

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

Как да ограничим дължината на текстовото поле спрямо символа с Unicode? Трябва ли да посоча отделна максимална дължина за низ Unicode и Unicode, така че да не надвишава максимум 15?

Отговори:

0 за отговор № 1

Или използвате nvarchar или varchar, не е необходимо да използвате друга максимална дължина за Unicode.

ако използвате varchar, тогава всеки знак на Unicode ще се счита за не-Unicode и преброяването няма да е различно.

ако използвате nvarchar, тогава всеки знак ще се счита за Unicode и преброяването няма да бъде различно.


1 за отговор № 2

Как мога да разгранича нормален текст и текст в Unicode, въведени в текстовото поле?

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

и след това можете да потвърдите характера или всичко, което искате.