如何在asp:ControlParameter中将字符串转换为十进制

时间:2015-05-19 20:32:35

标签: c# asp.net

我有一个带十进制值的文本框。 这是标记:

<asp:TextBox ID="txtLat" runat="server" Text="" ClientIDMode="Static" />
<asp:MaskedEditExtender ID="MaskedEditExtender3" runat="server" MaskType="Number"
    TargetControlID="txtLat" Mask="99\.999999999" AcceptNegative="Left">
</asp:MaskedEditExtender>

这是sqlDataSource插入标记:

<InsertParameters>
    <asp:ControlParameter Name="Lat" ControlID="txtLat" PropertyName="Text" Type="String" />
</InsertParameters>

这是背后的代码:

protected void btnAddOffice_Click(object sender, EventArgs e)
{   
    SqlDataSource1.Insert();
}

我需要将txtLat文本框中的文本转换为小数。 我可以在Controlparameter中转换它吗? 如果我在后面的代码中使用Convert.ToDecimal(),我该如何将它分配回ControlParameter?

感谢。

1 个答案:

答案 0 :(得分:0)

我发现了问题...我从掩码99.999999999中删除了转义字符(\)。 如果其他人遇到这个问题,这是我的最终加价......

    <asp:MaskedEditExtender ID="MaskedEditExtender4" runat="server" MaskType="Number" 
TargetControlID="txtLong" Mask="99.999999999" AcceptNegative="Left">
    </asp:MaskedEditExtender>

感谢所有评论/帮助的人。