0

I'm using application blocks and i have a property that use a "Not Null Validator" and a "Range Validator".

Then in presentation tier I'm using this code:

<tr>
    <td width="30%">
        <asp:Label ID="MyLabel" runat="server" Text="My Property"></asp:Label>
    </td>
    <td>
        <asp:TextBox ID="MyTextBox" runat="server" Width="175px"></asp:TextBox>
        <cc1:PropertyProxyValidator ID="MyPropertyProxyValidator" runat="server" ControlToValidate="MyTextBox" SourceTypeName="MySourceTypeName" RulesetName="MyRulesetName" PropertyName="MyPropertyName">*</cc1:PropertyProxyValidator>
    </td>
</tr>

This code throw me an error: Is not a valid value for Int32.

I'm read and use this article: http://www.davidhayden.com/blog/dave/archive/2007/02/28/propertyproxyvalidatorvalueconvertevent.aspx but it doesn't work.

Note: The string and datetime properties work me correctly. Sorry for my english : )

4

1 回答 1

0

Finally I found the problem, Is a little embarrassing, Is because I forgot fill the upperBound property of the Range Validator, I thought that if I put upperBoundType="Ignore" was no necesary put the upperBound, but not, you need fill with any value.

I had this code in Web.config validation section:

<validator type="XXXXX" culture="XXXXX" name="Range Validator" lowerBoundType="Inclusive" lowerBound="1" upperBoundType="Ignore" />

And now I have this:

<validator type="XXXXX" culture="XXXXX" name="Range Validator" lowerBoundType="Inclusive" lowerBound="1" upperBoundType="Ignore" upperBound="1" />

Yupi!!! I win a "Tumbleweed" badge :s (sorry for my english)

于 2011-07-14T15:23:01.523 回答