How To Use RangeValidator For Large Numbers (Int64 Range)
Apr 4, 2011Is there a way to use RangeValidator for large numbers (Int64 range)?
View 1 RepliesIs there a way to use RangeValidator for large numbers (Int64 range)?
View 1 RepliesI have a DetialsView that has a year field that needs to have the range set dynamiclly
I use this when it was just a textbox outisde the detailsview
protected void Page_Load(object sender, EventArgs e)
{
rvYear.MaximumValue = Convert.ToString(DateTime.Today.Year);
rvYear.ErrorMessage = "Must enter a year between 1900 and " + Convert.ToString(DateTime.Today.Year);
}
[Code]....
The following RangeValidator gives me the exception shown further below.
<asp:RangeValidator
ID="RangeValidator1"
runat="server"
ControlToValidate="EstCostTextBox"
ErrorMessage="Please
enter an estimated cost with only numbers."
Text="*"
Type="Currency"
MinimumValue="0"
MaximumValue="9999999999999999999999999999999999999999999999999999999999999999"><img
src="images/icons/WarningHS.png"
alt="Warning"
/></asp:RangeValidator>
Exception information:
Exception type: System.Web.HttpException
Exception message: The value '99999999999999999999999999999999999999999999999999999999999999999' of the MaximumValue property of 'RangeValidator1' cannot be converted to type 'Currency'.
i am trying to upload an excel to an oracle data base (10g xe) the excel has arround 46000 rows.I am getting the following error when i do a insert
ORA-06550 string 1 line 1,
PLS-00123: program too large (Diana nodes
With reference to the following thread: URL....I have problem applying the same concept to gridview EditItemTemplate. Is there a way i can add comma to large numbers and display it in currency format like exemple below:
Textbox3=Textbox1 * Textbox2
Textbox3= 1,000.00
Textbox3 should happen OnTextChanged and the above controls are in Gridview edit mode.
How can i calculate the sum of two textboxes(Textbox1 and Textbox2) and then add comma with .00 to another textbox(Textbox3). Example say Textbox1 = 2 and Textbox2 = 500
Textbox3=Textbox1 * Textbox2
Textbox3= 1,000.00
Note: Textbox3 should happen onkeyup ...
we are in the process of upgrading our crappy cms system and the new assemblies have changed from int to int64. I'm running into a problem when trying to build now. here is one excerpt of code that is causing a problem.
IDictionary<int, string> aliases
= new UrlAliasApi().GetUrlAliasesByType(
Company.DataLayer.Enumeration.UrlAliasType.Recipe);
foreach (ContentBase recipe in mergedResultset)
{
// if alias exists, overwrite quicklink!
string alias;
if (aliases.TryGetValue(recipe.Id, out alias))
{
recipe.QuickLink = alias;
}
}
The error is
Error 323 The best overloaded method match for 'System.Collections.Generic.IDictionary.TryGetValue(int, out string)' has some invalid arguments Its referring to recipe.Id which is an Int64 value.
I need to use a field of 64 bits (32 is not long enough). I used the following page to see the effects of bit shifting when using the Int64 data type:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<%@ Page Language="VB" WarningLevel="1" Explicit="true" Strict="true" %>
<script language="VB" runat="server">
private sub do_test()
dim bit_no as Integer
dim info as Int64
' Show min value as binary ...
info = Int64.MinValue
response.write( String.Format( "Int64.MinValue = {0}<br>", info ) )
response.write( String.Format( "Int64.MinValue (binary) = {0}<br>", Convert.ToString( info, 2 ) ) )
response.write( "<br>" )
' Show max value as binary ...
info = Int64.MaxValue
response.write( String.Format( "Int64.MaxValue = {0}<br>", info ) )
response.write( String.Format( "Int64.MaxValue (binary) = {0}<br>", Convert.ToString( info, 2 ) ) )
response.write( "<br>" )
response.write( "Bit Shift Test" )
response.write( "<br>" )
for bit_no = 0 to 63
info = 1 << bit_no
response.write( String.Format( "1 << {0} = {1}<br>", bit_no, info ) )
next
end sub
</script>
<html>
<body>
<% do_test() %>
</body>
</html>
The output of the page is:
Int64.MinValue = -9223372036854775808
Int64.MinValue (binary) = 1000000000000000000000000000000000000000000000000000000000000000
Int64.MaxValue = 9223372036854775807
Int64.MaxValue (binary) = 111111111111111111111111111111111111111111111111111111111111111
Bit Shift Test
1 << 0 = 1
1 << 1 = 2
1 << 2 = 4
1 << 3 = 8
1 << 4 = 16
1 << 5 = 32
1 << 6 = 64
1 << 7 = 128
1 << 8 = 256
1 << 9 = 512
1 << 10 = 1024
1 << 11 = 2048
1 << 12 = 4096
1 << 13 = 8192
1 << 14 = 16384
1 << 15 = 32768
1 << 16 = 65536
1 << 17 = 131072
1 << 18 = 262144
1 << 19 = 524288
1 << 20 = 1048576
1 << 21 = 2097152
1 << 22 = 4194304
1 << 23 = 8388608
1 << 24 = 16777216
1 << 25 = 33554432
1 << 26 = 67108864
1 << 27 = 134217728
1 << 28 = 268435456
1 << 29 = 536870912
1 << 30 = 1073741824
1 << 31 = -2147483648
1 << 32 = 1
1 << 33 = 2
1 << 34 = 4
1 << 35 = 8
1 << 36 = 16
1 << 37 = 32
1 << 38 = 64
1 << 39 = 128
1 << 40 = 256
1 << 41 = 512
1 << 42 = 1024
1 << 43 = 2048
1 << 44 = 4096
1 << 45 = 8192
1 << 46 = 16384
1 << 47 = 32768
1 << 48 = 65536
1 << 49 = 131072
1 << 50 = 262144
1 << 51 = 524288
1 << 52 = 1048576
1 << 53 = 2097152
1 << 54 = 4194304
1 << 55 = 8388608
1 << 56 = 16777216
1 << 57 = 33554432
1 << 58 = 67108864
1 << 59 = 134217728
1 << 60 = 268435456
1 << 61 = 536870912
1 << 62 = 1073741824
1 << 63 = -2147483648
Obviously, the bit shift operator seems to be wrapping?? !! How can I obtain the result shown below using VB / ASP.Net -- is it even possible???
1 << 0 = 1
1 << 1 = 2
1 << 2 = 4
1 << 3 = 8
1 << 4 = 16
1 << 5 = 32
1 << 6 = 64
1 << 7 = 128
1 << 8 = 256
1 << 9 = 512
1 << 10 = 1024
1 << 11 = 2048
1 << 12 = 4096
1 << 13 = 8192
1 << 14 = 16384
1 << 15 = 32768
1 << 16 = 65536
1 << 17 = 131072
1 << 18 = 262144
1 << 19 = 524288
1 << 20 = 1048576
1 << 21 = 2097152
1 << 22 = 4194304
1 << 23 = 8388608
1 << 24 = 16777216
1 << 25 = 33554432
1 << 26 = 67108864
1 << 27 = 134217728
1 << 28 = 268435456
1 << 29 = 536870912
1 << 30 = 1073741824
1 << 31 = 2147483648
1 << 32 = 4294967296
1 << 33 = 8589934592
1 << 34 = 17179869184
1 << 35 = 34359738368
1 << 36 = 68719476736
1 << 37 = 137438953472
1 << 38 = 274877906944
1 << 39 = 549755813888
1 << 40 = 1099511627776
1 << 41 = 2199023255552
1 << 42 = 4398046511104
1 << 43 = 8796093022208
1 << 44 = 17592186044416
1 << 45 = 35184372088832
1 << 46 = 70368744177664
1 << 47 = 140737488355328
1 << 48 = 281474976710656
1 << 49 = 562949953421312
1 << 50 = 1125899906842620
1 << 51 = 2251799813685250
1 << 52 = 4503599627370500
1 << 53 = 9007199254740990
1 << 54 = 18014398509482000
1 << 55 = 36028797018964000
1 << 56 = 72057594037927900
1 << 57 = 144115188075856000
1 << 58 = 288230376151712000
1 << 59 = 576460752303423000
1 << 60 = 1152921504606850000
1 << 61 = 2305843009213690000
1 << 62 = 4611686018427390000
1 << 63 = 9223372036854780000
If I store the maxium unsigned value as a bigint in mysqlm it does not fit in an int64. Is there anyway of making the int64 unsigned. Mysql BigInt has an unsiged value of 18446744073709551615.
If not I can make my sql column signed, as it not a number value but binary value I am storing, but I was just wondering if it was possible
I am facing problem using range validator.
Like in code below
[code]
If I enter value 450 in textbox to validate it in range 25 to 50 ,it won't give any error message
I have a Range Validator as follows. It is for restricting values between 1900 and 2070. However, it fires error when I enter a alphabet also. I want this to be fired only if the user enters integer values. How do I overcome it?
<asp:RangeValidator ID="RangeValidator1" runat="server" ControlToValidate="txtYear"
ValidationGroup="report" ErrorMessage="EM1|Year" MaximumValue="2079" MinimumValue="1900"
SetFocusOnError="True" Display="Dynamic" Type="Integer">
<img src="../../Images/error.gif" alt="Format" />
</asp:RangeValidator>
When using a range validator, if the user exceeds the defined range, How do you code it so it disables a button so the user can't continue. (without using JavaScript)
View 3 RepliesI have a table "RANGES" with the following columns
LowRange as int
HighRange as int
with the data similar to below
select * from Ranges
LowRange HighRange
1 100
101 200
201 300
.
.
.
901 1000
And another table "infoDetails" with the following columns
Range as INT
amount as money
with the data similar to below
select * from infoDetails
Range Amount
23 34.00
235 44.00
345 34.00
678 100.00
555 100.00
530 100.00
510 100.00
I need one report with the following format without cursor.
LowRange HighRange Count Amount
1 100 1 34.00
101 200 0 0.00
.
.
501 600 3 300.00
601 700 1 100.00
I want to validate textbox, so user enter greater than 30
if user enter lessthan 30 than message will display.. for that i use range validator of asp.net
<asp:TextBox ID="txtprice" runat="server" CssClass="textbox" Width="180px"></asp:TextBox>
<asp:RangeValidator runat="server" Display="None" ID="range1" ValidationGroup="grdsave"
SetFocusOnError="true" ControlToValidate="txtPrice" MinimumValue="30" MaximumValue="999"
ErrorMessage="Minimun budget is 30 USA dollor"></asp:RangeValidator>
It give message if i enter less than 30. but if i enter 100 or 200 it also give message. How can i allow that value?
I would like to to make a UI with a panel of numbers, and when hovered above one of them ten the number becomes larger. something like that:
[URL]
I want that when I press a numbers it shows it's value in some other textbox. In which .NET technology is it possible to do it? Windows Forms? WPF? other?
I have the below rangeValidator. However I would also like it to accept 999999,00 (seperated by a comma) I have found the following reg expression: ((d{1,2},)?(d{3},)*(d{3}))|(d+) but I'm not sure where to include this?
[Code]....
I want to be sure a user only enters alphabetic characters for a field that accepts strings. They should only be able to enter a-z, no numbers. Can the minimum and maximum values be set to a and z, respectively?
View 10 RepliesIt can only be used in RangeValidator MinimumValue?I need two texts to determine the minimum and maximum.
<asp:RangeValidator ID="RangeValidator1" runat="server"
ErrorMessage="Payment amount is too small!" ControlToValidate="AmountDeposit"
ValidationGroup="ErrormessageValidationGroup" MinimumValue="1" Type="Integer" Display="Dynamic">
[code]...
I am using RangeValidator whose Minimum and Maximum vales are set in code behind dynamically. Minimum and Maximum values are exracted form the database. These values are in the range of 0 to n (integers only). Therefore user can enter values from0 to n (integers only).Now I have a situation where user can also put -1 which can't be handled by range validator. So my last option is to regular expression to handle such situation.Valid values for the user are (-1, 0-n). But I don't now how to get such regular expression , any help would be appreciated. I can manipulate expression in code behind based on values extracted from the database.Also , maximum possible value for n is 255 (Note: minimum and maximum values are extracted from the database)
View 11 RepliesI am working on a ASP.NET app that supports user level cultures. Just about everything works, however, I am running into a problem with the RangeValidator. Here is the sample control set:
[Code]....
When a culture that uses "0,0" (pt-BR for example) attempts to load this page with the controls as shown, it bombs (Gives an ASP.NET debug page). If I either set MinimumValue="0" or add CultureInvariantValues="true" the page will load. The problem with this is that on several controls, the minimum value is actually 0.0001. When I use the CultureInvariant setting, that validator is telling me that the following values are invalid: ".031" and "1", no matter what culture I am using to view the page.
I understand the the CultureInvariantValues setting applies only to the values in the Min/Max settings on the validator, not on the data entered in the control that is being validated. But this does not explain why values that should be accepted as valid are being flagged as invalid.Our application currently runs in 20 different countries and is internally translated into 4 languages (based on user culture settings), with 3 more on the board for this year. I have googled this extensively, and while I have found some info on Currency and Date data types, the problems experienced are not the same.
I have Asp:TextBox,Asp:RegularExpressionValidator and Asp:RangeValidator on .aspx page.
These two validators have ControlToValidate value equal to textBox Id.
RegularExpressionValidator have validation Expression such that it allows only number.
Range validator have maximum value ="100" and if I enter any text then both validators get fired .
Logically only RegularExpressionValidator should fire if I enter any textvalue.
Is there any property of Range validator such that it check for numeric value to compare and disbled if value entered in textBox is some text so that no handling of event(Client side and Server side both) is required.
I am trying to put a range validator on a date entered by a user. However, I want the minimum date to by dynamic to only have a user with a DOB which is over 17 yrs ago. Is there a way to put a dynamic value i.e Date.Now() - x;.
View 11 RepliesThe code below when using a traditional ASP.NET DropDownList works perfectly. If a value is not picked (default value still displaying), then the range validator displays the problem. However when I use this same code with an AJAX ComboBox, the RangeValidator
returns false every time, and the message is always displayed. Take a look:
[Code]....
So every time I press a button to postback, the "** Item is required**" message is displayed. Again, this works just fine with a regular ASP.NET DDL, just not with the ComboBox from the toolkit. I can get a RequiredFieldValidator working with the ComboBox, but I like the post selection behavior of a RangeValidator better.
I'm having an issue with my ASP.NET RangeValidator controls.
I want to allow users to enter a discount amount, and this amount must be negative (< $0.00). I want to verify that the amount entered in a textbox is a negative value, so I have this in my page markup:
<asp:TextBox ID="tbxDiscount" runat="server" />
<asp:RangeValidator ID="rvDiscount" runat="server" ControlToValidate="tbxDiscount"
MinimumValue="0.0" MaximumValue="0.0" EnableClientScript="true"
ErrorMessage="Please enter a negative value for a discount" />
and I attempt to set the MinimumValue dynamically in my code before the page gets rendered - to the negative equivalent of my item price. So if the item is $69, I want to set the minimum value to - $69:
rvDiscount.MinimumValue = (-1.0m * Price).ToString();
Trouble is: I keep getting this error message:
The maximum value 0.0 cannot be less
than the minimum value -69.00 for
rvDiscount
WTF?!?!??! Where I come from, -69 $ IS less than $0 ...... so what's the problem?
I'm developing a web application which get number with decimals. When I write 0.08 the rangevalidator understand 80 and it doesn't valid it. It does well if I write 0,08.The most extrange is In the develpoing computer and in the client computer I have the point as decimal separator in regional settings.Where can I change the decimal separator por rangevalidator in the cliente computer?
View 1 Replies