Я сделал это.
Проблема ответа выше заключается в отображении данных Linq to SQL.
Поля типа money или smallmoney отображаются с использованием десятичного типа.
Решение, которое я нашел, было ...
Я не сохраняю денежные поля вида, используя UpdateModel.
до:
Check c = new Check();
this.UpdateModel(c, new[] { "number", "name", "value1", "value2" });
после
Check c = new Check();
this.UpdateModel(c, new[] { "number", "name" });
c.value1 = Convert.ToDecimal(f["value1"]);
c.value2 = Convert.ToDecimal(f["value2"]);
При этом значение успешно конвертируется для десятичного типа данных.
В представлении я использовал объекты пространства имен Globalization.
//ViewPage
<%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage" %>
<%@ Import Namespace="System.Globalization" %>
<asp:Content ID="Content1" ContentPlaceHolderID="MainContent" runat="server">
<%
NumberFormatInfo LocalFormat = (NumberFormatInfo)NumberFormatInfo.CurrentInfo.Clone();
LocalFormat.CurrencySymbol = "";
Check c = (Check)ViewData.Model;
%>
//In the field, I use de string format type currency and I passed the object of //CurrentSymbol
...
Value1:<br>
<%= Html.TextBox("value1", Convert.ToDouble(c.value1).ToString("C", LocalFormat))%>
....
</asp:Content>
Спасибо, что помогли мне.