DNN / ASP.NET - как извлечь номер из текстового поля? - PullRequest
0 голосов
/ 09 января 2019

Я пытаюсь создать форму с DNN и ASP.NET, и у меня возникают проблемы с извлечением числа из текстового поля, которое должно содержать десятичное число.

Остальная часть формы работает нормально (остальные поля являются строками), она корректно передает указанные поля в базу данных.

Форма в моем файле ascx имеет:

<div class="dnnFormItem">
            <div class="dnnLabel">
                <asp:Label ID="myDecimalLabel" runat="server" Text="Enter decimal here:"></asp:Label>
            </div>
            <asp:TextBox ID="myDecimalTextBox" runat="server"></asp:TextBox>            
            <asp:RegularExpressionValidator runat="server" controltovalidate="myDecimalTextBox" validationexpression="^\d*\.?\d*$" errormessage="Invalid input" />
</div>

И в методе Добавить / Обновить моего файла ascx.cs у меня есть:

MyDecimalValue = String.IsNullOrEmpty(myDecimalTextBox.Text.Trim()) ? 0 : Decimal.Parse(myDecimalTextBox.Text.Trim(), CultureInfo.InvariantCulture)

Тем не менее, преобразование всегда дает результат 0, даже когда вводится другое число.

Я проверил, что текстовое поле по ошибке не было пустым (это не так), поэтому ошибка в преобразовании. Я также пробовал TryParse и Convert.ToDecimal, но безрезультатно. На самом деле, я также попробовал это с Double или Int, и это тоже не сработало, я просто не могу извлечь число из этого текстового поля. Я также попытался сделать TextBox типом чисел, но это тоже не сработало.

Что я делаю не так?

...