By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
449,367 Members | 1,780 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 449,367 IT Pros & Developers. It's quick & easy.

Convert int to String Error

P: n/a
This worked in the command window while in debug mode

?table.Rows[0].ItemArray["ColumnName"].ToString()
"f0165f94-648f-4997-b578-11d89c8b1f61"

But gives the error below when I compile.

Cannot implicitly convert type 'string' to 'int' and the word ColumnName is
underlined.

Here is a code snippett (with error line marked with an asterisk):

DataSet ds = new DataSet();
ds.ReadXml(@"D:\Data\test.xml", XmlReadMode.ReadSchema);

foreach (DataTable table in ds.Tables)
{

for (int index = 0; index <= table.Rows.Count; index++)
{

{
SqlCommand command = new SqlCommand("ImportData", conn);
command.CommandType = CommandType.StoredProcedure;
adapter.InsertCommand = command;

SqlParameter param;

param = command.Parameters.Add("@columnID", SqlDbType.UniqueIdentifier);
* param.Value = new
Guid(table.Rows[index].ItemArray["ColumnName"].ToString());
}
}
}

Did I do something wrong that I am not seeing, or is there another way to
reference a column?
Sep 5 '06 #1
Share this Question
Share on Google+
4 Replies


P: n/a
Hi,

Just use

table.Rows[0]["ColumnName"].ToString()
--
--
Ignacio Machin,
ignacio.machin AT dot.state.fl.us
Florida Department Of Transportation

"Mike Collins" <Mi*********@discussions.microsoft.comwrote in message
news:25**********************************@microsof t.com...
This worked in the command window while in debug mode

?table.Rows[0].ItemArray["ColumnName"].ToString()
"f0165f94-648f-4997-b578-11d89c8b1f61"

But gives the error below when I compile.

Cannot implicitly convert type 'string' to 'int' and the word ColumnName
is
underlined.

Here is a code snippett (with error line marked with an asterisk):

DataSet ds = new DataSet();
ds.ReadXml(@"D:\Data\test.xml", XmlReadMode.ReadSchema);

foreach (DataTable table in ds.Tables)
{

for (int index = 0; index <= table.Rows.Count; index++)
{

{
SqlCommand command = new SqlCommand("ImportData", conn);
command.CommandType = CommandType.StoredProcedure;
adapter.InsertCommand = command;

SqlParameter param;

param = command.Parameters.Add("@columnID",
SqlDbType.UniqueIdentifier);
* param.Value = new
Guid(table.Rows[index].ItemArray["ColumnName"].ToString());
}
}
}

Did I do something wrong that I am not seeing, or is there another way to
reference a column?

Sep 5 '06 #2

P: n/a
Mike,

This should not have worked in the command window.

The reason it fails when you compile is because the ItemArray property
returns an array of values representing the row. Arrays are indexed on
integers, not strings, which is why you can't compile it.

Hope this helps.
--
- Nicholas Paldino [.NET/C# MVP]
- mv*@spam.guard.caspershouse.com

"Mike Collins" <Mi*********@discussions.microsoft.comwrote in message
news:25**********************************@microsof t.com...
This worked in the command window while in debug mode

?table.Rows[0].ItemArray["ColumnName"].ToString()
"f0165f94-648f-4997-b578-11d89c8b1f61"

But gives the error below when I compile.

Cannot implicitly convert type 'string' to 'int' and the word ColumnName
is
underlined.

Here is a code snippett (with error line marked with an asterisk):

DataSet ds = new DataSet();
ds.ReadXml(@"D:\Data\test.xml", XmlReadMode.ReadSchema);

foreach (DataTable table in ds.Tables)
{

for (int index = 0; index <= table.Rows.Count; index++)
{

{
SqlCommand command = new SqlCommand("ImportData", conn);
command.CommandType = CommandType.StoredProcedure;
adapter.InsertCommand = command;

SqlParameter param;

param = command.Parameters.Add("@columnID",
SqlDbType.UniqueIdentifier);
* param.Value = new
Guid(table.Rows[index].ItemArray["ColumnName"].ToString());
}
}
}

Did I do something wrong that I am not seeing, or is there another way to
reference a column?

Sep 5 '06 #3

P: n/a
That syntax works...thanks.

"Ignacio Machin ( .NET/ C# MVP )" wrote:
Hi,

Just use

table.Rows[0]["ColumnName"].ToString()
--
--
Ignacio Machin,
ignacio.machin AT dot.state.fl.us
Florida Department Of Transportation

"Mike Collins" <Mi*********@discussions.microsoft.comwrote in message
news:25**********************************@microsof t.com...
This worked in the command window while in debug mode

?table.Rows[0].ItemArray["ColumnName"].ToString()
"f0165f94-648f-4997-b578-11d89c8b1f61"

But gives the error below when I compile.

Cannot implicitly convert type 'string' to 'int' and the word ColumnName
is
underlined.

Here is a code snippett (with error line marked with an asterisk):

DataSet ds = new DataSet();
ds.ReadXml(@"D:\Data\test.xml", XmlReadMode.ReadSchema);

foreach (DataTable table in ds.Tables)
{

for (int index = 0; index <= table.Rows.Count; index++)
{

{
SqlCommand command = new SqlCommand("ImportData", conn);
command.CommandType = CommandType.StoredProcedure;
adapter.InsertCommand = command;

SqlParameter param;

param = command.Parameters.Add("@columnID",
SqlDbType.UniqueIdentifier);
* param.Value = new
Guid(table.Rows[index].ItemArray["ColumnName"].ToString());
}
}
}

Did I do something wrong that I am not seeing, or is there another way to
reference a column?


Sep 5 '06 #4

P: n/a
Thanks, that helps a lot...especially in knowing why it did not work.

"Nicholas Paldino [.NET/C# MVP]" wrote:
Mike,

This should not have worked in the command window.

The reason it fails when you compile is because the ItemArray property
returns an array of values representing the row. Arrays are indexed on
integers, not strings, which is why you can't compile it.

Hope this helps.
--
- Nicholas Paldino [.NET/C# MVP]
- mv*@spam.guard.caspershouse.com

"Mike Collins" <Mi*********@discussions.microsoft.comwrote in message
news:25**********************************@microsof t.com...
This worked in the command window while in debug mode

?table.Rows[0].ItemArray["ColumnName"].ToString()
"f0165f94-648f-4997-b578-11d89c8b1f61"

But gives the error below when I compile.

Cannot implicitly convert type 'string' to 'int' and the word ColumnName
is
underlined.

Here is a code snippett (with error line marked with an asterisk):

DataSet ds = new DataSet();
ds.ReadXml(@"D:\Data\test.xml", XmlReadMode.ReadSchema);

foreach (DataTable table in ds.Tables)
{

for (int index = 0; index <= table.Rows.Count; index++)
{

{
SqlCommand command = new SqlCommand("ImportData", conn);
command.CommandType = CommandType.StoredProcedure;
adapter.InsertCommand = command;

SqlParameter param;

param = command.Parameters.Add("@columnID",
SqlDbType.UniqueIdentifier);
* param.Value = new
Guid(table.Rows[index].ItemArray["ColumnName"].ToString());
}
}
}

Did I do something wrong that I am not seeing, or is there another way to
reference a column?


Sep 5 '06 #5

This discussion thread is closed

Replies have been disabled for this discussion.