1
我收到以下错误错误26无法将类型 'object'隐式转换为'string'。存在明确的转换(您是否遗漏了 转换?) ON THIS LINE string str = rd [0] .ToString();当尝试获取文件路径字符串任何人都可以错误无法将类型'object'隐式转换为'string'。存在明确的转换(您是否缺少演员?)
感谢理清我 问题提前
try
{
using (SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["DefaultConnection"].ToString()))
{
SqlCommand cmd = new SqlCommand();
String query = "select [PDFFilePath] from [dbo].[AdmPDFManage] Where [PdfId] = (SELECT MAX([PdfId]) FROM [dbo].[AdmPDFManage]) ";
cmd.Connection = con;
cmd.CommandText = query;
con.Open();
SqlDataReader rd = new SqlDataReader();
while (rd.Read())
{
string str = rd[0].ToString();
}
}
}
catch (Exception ex)
{
throw;
}
我也试试这个,但得到了同样的错误
using (SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["DefaultConnection"].ToString()))
{
SqlCommand cmd = new SqlCommand();
String query = "select [PDFFilePath] from [dbo].[AdmPDFManage] Where [PdfId] = (SELECT MAX([PdfId]) FROM [dbo].[AdmPDFManage]) ";
cmd.Connection = con;
cmd.CommandText = query;
con.Open();
String PDFfilePath = (String)cmd.ExecuteScalar();
}
在哪条线上? “rd [0]”的值究竟是什么?调试您的代码并告诉我们。 –
你的代码不会显示任何对象到字符串的赋值......你能澄清哪一行标记了这个错误吗?另外:该异常处理是多余的,应该删除 –
@Trafz不,这是不好的建议; '使用'处理这个问题;将'try' /'finally'加入'Close()'是没有意义的 - 并且引入更多的地方来犯错误。不要那样做。 '使用'很好。 –