I've been at this for an hour, but I can't seem to format a string as a percent while I am looping through a datatable. The string value that is being passed in is "3.22"
Public Function securityDt() As DataTable
Dim secMasterDt As New clsDataSecurity
Dim dt As New DataTable
dt = secMasterDt.getSecurityMasters()
For Each row As DataRow In dt.Rows
[Code] .....
I am looping through the rows of a DataRowCollection and assigning the fields of each row to a variable. I always get "Input string was not in a correct format" no matter how I cast this. I just need gapCd to contain 0 if the field is null or the value otherwise. It seems the IsDbNull is not returning true properly. I've also tried DbNull.Value comparisons with no l
The reason this is being done is at this point we have no idea what the column contains.However, if the formatter is "{0:MM/dd/yyyy}" and the DataRow("ColumnINeed") is an integer containing 42, String.Format is returning: MM/dd/yyyy In this situation I need it to throw an exception instead of returning nonsense.Is there anyway to make String.Format throw an exception if the object does not match what the format string is expecting?
I have a combobox that pulls a list of values from a database. When a new entry is entered I want an entry in the combobox to read "New record". However, from what I have seen I can only insert and object, such as a DataRow, into the combobox. Is there anyway I can convert a string to to a DataRow, or some other object and insert it in to the combobox? I know there is I am just rusty on my vb.
I am working on a new ASP.Net 4.0 data driven app. In the DAL I check for NULL values on all my data and default to the proper data when NULL. I have a strange issue going on. Two dates are coming back - on one I need the time only. The First line of code for the full date works without fail - but the second line of code errors pointing to the format string but the strange part is that it errors on NULL values which does not use the format string and just returns Date.MinValue. When the second line gets data it formats the return correctly.
Dim dr As DataRow .TourDate = IIf(dr.IsNull("tourdate"), Date.MinValue, Format(dr("tourdate"), "MM/dd/yyyy")) .TourTime = IIf(dr.IsNull("tourtime"), Date.MinValue, Format(dr("tourtime"), "T"))
The error comes on the second line when dr("tourtime") is NULL - the erroe is: Argument 'Expression' is not a valid value.
So I need a format string to pass to String.Format that would "move" the decimal point.I can't perform any math operations before doing the String.Format, so it has to work right off the bat.Basically I'm emulating a formatting string from a proprietary server. In it if I say:
"MR2"
for the value:
12345
The result is:
123.45
I'm close with this, but it's not spot on:
String.Format("{0:#0.##}", 12345)
an extra, but not necessary... there is also MR2Z, which moves the decimal 2 left, but if the value is 0 "" is returned.
I have a project that I am creating a string based on a hierarchy. Without going too much into the logic, I am sure the IF THEN logic works.I have a master control table that contains a 4 number hierarchy sequence for each row. I need to loop through the control table to know how the string should look, and start a new string if the F_ID are different. I am using a For loop to index the control table and loop through it building the string as I go, based on the sequence. I am just concerned if I am referencing the previous datarow value with the .Item Overload option in the IF THEN statements correctly, and appending the stringbuilder variable using the composite primary keys properly.
I need to take a string formatted like '010711' (DDMMYY) and put it into format '01-Jul-11'. Ive thought about doing something like string.toArray and then having some conditionals that format from there but am looking for an easier way.
I have a field that I display via: String.Format({0:c},amount) This produces the string "$28.28" However, when I try to convert back to a decimal amount, I get an incorrect format exception: amount = Decimal.Parse(amount.Text, NumberStyles.Currency) I also tried it with NumberStyles.AllowCurrencySymbol with the same results. I verified that the value in amount.Text is "$28.28". Am I missing something? Shouldn't these two operations use the same currency symbol and formats?
I'm trying to create a print function with a corresponding print preview. For some reason, any string I create with String.Format will NOT show up on the print preview! Use the code snippet below as an example:
Dim strTemp As String strTemp = String.Format("{0, 210} {1, 75} {2, 51} {3, 200} ", "NAME", "PRICE", "QUANTITY", "DESCRIPTION")
rs2.Fields("Field29").Value has values like "YYYYMMDD" in a string.how can i convert a "YYYYMMDD" string to a needed date format like 'dd mmm yy' (or any format)
I have two datatables with similar structures that I want to make one existing row to be updated from another datatable.
For example, "tableA" has three columns: "one", "two", and "three"; with "one" being the primary key...
and "tableB" has three columns as well: "one", "two", and "three"; with "one" being the primary key.
Say there is a row on tableA that is different than a row on tableB (with a matching primary key). What I wanted to do, as efficiently as possible, is to take the that row from tableB and replace the one on tableA so it'll be modified.
I'm not sure if there's an easier way of doing that instead of using loops for setting the row's items.
I'm trying to solve a problem regarding types of list. First of all I have a stored procedure in my DB which does a select of a single column and I try to proceed it in my app in VB. By making a method function I declared a DataTable that loads through the SqlCommand(with the CloseConnection behavior). After that I publicly declared a List(Of String) which needs to be populated with the rows/items from the stored procedure that is on the way. Below is my snippet of the code:
Dim dt As New DataTable() Try If conn.State = ConnectionState.Open Then
[Code]....
It's LPrefix = collection.Cast(Of String)() where I get an exception error telling me that I can't really convert it. The old fashion way is to iterate with for/for each loop but that's not what I want for best use of performance especially if the list will have thousands of rows from a single column. So basically, I want to insert those items from that DataTable to the List(Of String) without For/For Each loop.
Running on VisualStudio2010 Ultimate, .NET FrameWork 4.0.
I am trying to use string.format on a url to pass several values into the string. It's probably a simple error but I cannot get the following code to work. It doesn't even build the string.
Public Sub getStockData() Dim client As New WebClient() Dim url As String
I have been given some instructions to percent encode a URL twice. I know how to percent encode a URL once but how do you do it twice? Surly when it is encoded once, it will be the same when encoded again.
i have a card number and i convert it into hexadecimal. After that i wan to set the format to 6 digit if the hexa card number has a length =5. so how i'm going to set the format?
Why would anyone use String.Format in C# and VB .NET as opposed to the concatenation operators (& in VB, and + in C#)?What is the main difference? Why are everyone so interested in using String.Format? I am very curious.
I am trying to filter fields in a table that contain percent (%) and apostrophe (') characters. I kow that to filter an apostrophe you need to add another apostrophe (''). However, when a text contains the percent (%) character in combination with an apostrophe (') character, an exception is thrown. Also, when using the % character in a filter string, it will be function as an "*" (fields starting or ending with). I need the % to be considered as a character whenever the % makes part of a string in the field.
Dim TheTable As New DataTable Dim col As New DataColumn("Col1") TheTable.Columns.Add(col) Dim TheRow As DataRow = TheTable.NewRow