C# ';对象';不包含';行';没有扩展方法';行';接受类型为'的第一个参数;对象';可以找到
“对象”不包含“行”的定义,也不包含扩展名 接受类型为“object”的第一个参数的方法“Rows”可以是 发现是否缺少using指令或程序集引用 代码如下:C# ';对象';不包含';行';没有扩展方法';行';接受类型为'的第一个参数;对象';可以找到,c#,asp.net,database,C#,Asp.net,Database,“对象”不包含“行”的定义,也不包含扩展名 接受类型为“object”的第一个参数的方法“Rows”可以是 发现是否缺少using指令或程序集引用 代码如下: public partial class Default3 : System.Web.UI.Page { static SqlConnection con = new SqlConnection(@"connectionString"); protected void Page_Load(object sender, Ev
public partial class Default3 : System.Web.UI.Page
{
static SqlConnection con = new SqlConnection(@"connectionString");
protected void Page_Load(object sender, EventArgs e)
{
if (!this.IsPostBack)
{
ddlImg.DataSource = GetData("SELECT EmpID, EmpName FROM Tbl_Emp");
ddlImg.DataTextField = "EmpName";
ddlImg.DataValueField = "EmpID";
ddlImg.DataBind();
}
}
private object GetData(string query)
{
DataTable dt = new DataTable();
string constr = ConfigurationManager.ConnectionStrings["tbFiles2ConnectionString"].ConnectionString;
using (SqlConnection con = new SqlConnection(constr))
{
using (SqlCommand cmd = new SqlCommand(query))
{
using (SqlDataAdapter sda = new SqlDataAdapter())
{
cmd.CommandType = CommandType.Text;
cmd.Connection = con;
sda.SelectCommand = cmd;
sda.Fill(dt);
}
}
return dt;
}
}
protected void Button1_Click(object sender, EventArgs e)
{
SqlCommand cmd = new SqlCommand();
con.Open();
cmd.Connection = con;
cmd.CommandText = ("INSERT INTO Tbl_Emp(EmpID, EmpName, EmpPic ) VALUES('"+TextBox1.Text+"','"+TextBox2.Text+"','" + FileUpload1 + "')");
cmd.ExecuteNonQuery();
con.Close();
}
protected void Button2_Click(object sender, EventArgs e)
{
string id = ddlImg.SelectedItem.Value;
Image1.Visible = id != "0";
if (id != "0")
{
byte[] bytes = (byte[])GetData("SELECT Data FROM Tbl_Emp WHERE Emp_ID =" + id).Rows[0]["Data"]; // Error popup here
string base64String = Convert.ToBase64String(bytes, 0, bytes.Length);
Image1.ImageUrl = "data:image/png;base64," + base64String;
}
}
}
问题是
GetData
返回的object
没有行
属性。因此,编译器错误出现在:
...GetData("SELECT Data FROM Tbl_Emp WHERE Emp_ID =" + id).Rows[0]...
返回一个数据表
:
private DataTable GetData(string query)
{
DataTable dt = new DataTable();
string constr = ConfigurationManager.ConnectionStrings["tbFiles2ConnectionString"].ConnectionString;
using (SqlConnection con = new SqlConnection(constr))
{
using (SqlCommand cmd = new SqlCommand(query))
{
using (SqlDataAdapter sda = new SqlDataAdapter())
{
cmd.CommandType = CommandType.Text;
cmd.Connection = con;
sda.SelectCommand = cmd;
sda.Fill(dt);
}
}
}
return dt;
}
请注意,您应该
- 使用参数化查询而不是字符串连接,以防止sql注入等问题
- 不要使用
connection(在ASP.NET中更不用说),请使用static
语句始终尽快关闭连接。阅读:using
GetData
返回的对象
没有行
属性。因此,编译器错误出现在:
...GetData("SELECT Data FROM Tbl_Emp WHERE Emp_ID =" + id).Rows[0]...
返回一个数据表
:
private DataTable GetData(string query)
{
DataTable dt = new DataTable();
string constr = ConfigurationManager.ConnectionStrings["tbFiles2ConnectionString"].ConnectionString;
using (SqlConnection con = new SqlConnection(constr))
{
using (SqlCommand cmd = new SqlCommand(query))
{
using (SqlDataAdapter sda = new SqlDataAdapter())
{
cmd.CommandType = CommandType.Text;
cmd.Connection = con;
sda.SelectCommand = cmd;
sda.Fill(dt);
}
}
}
return dt;
}
请注意,您应该
- 使用参数化查询而不是字符串连接,以防止sql注入等问题
- 不要使用
connection(在ASP.NET中更不用说),请使用static
语句始终尽快关闭连接。阅读:using
GetData
返回的对象
没有行
属性。因此,编译器错误出现在:
...GetData("SELECT Data FROM Tbl_Emp WHERE Emp_ID =" + id).Rows[0]...
返回一个数据表
:
private DataTable GetData(string query)
{
DataTable dt = new DataTable();
string constr = ConfigurationManager.ConnectionStrings["tbFiles2ConnectionString"].ConnectionString;
using (SqlConnection con = new SqlConnection(constr))
{
using (SqlCommand cmd = new SqlCommand(query))
{
using (SqlDataAdapter sda = new SqlDataAdapter())
{
cmd.CommandType = CommandType.Text;
cmd.Connection = con;
sda.SelectCommand = cmd;
sda.Fill(dt);
}
}
}
return dt;
}
请注意,您应该
- 使用参数化查询而不是字符串连接,以防止sql注入等问题
- 不要使用
connection(在ASP.NET中更不用说),请使用static
语句始终尽快关闭连接。阅读:using
GetData
返回的对象
没有行
属性。因此,编译器错误出现在:
...GetData("SELECT Data FROM Tbl_Emp WHERE Emp_ID =" + id).Rows[0]...
返回一个数据表
:
private DataTable GetData(string query)
{
DataTable dt = new DataTable();
string constr = ConfigurationManager.ConnectionStrings["tbFiles2ConnectionString"].ConnectionString;
using (SqlConnection con = new SqlConnection(constr))
{
using (SqlCommand cmd = new SqlCommand(query))
{
using (SqlDataAdapter sda = new SqlDataAdapter())
{
cmd.CommandType = CommandType.Text;
cmd.Connection = con;
sda.SelectCommand = cmd;
sda.Fill(dt);
}
}
}
return dt;
}
请注意,您应该
- 使用参数化查询而不是字符串连接,以防止sql注入等问题
- 不要使用
connection(在ASP.NET中更不用说),请使用static
语句始终尽快关闭连接。阅读:using
getdata()
函数签名更改为
private DataTable GetData(string query){
}
将getdata()
函数签名更改为
private DataTable GetData(string query){
}
将getdata()
函数签名更改为
private DataTable GetData(string query){
}
将getdata()
函数签名更改为
private DataTable GetData(string query){
}
错误被抛出到哪里?问题是什么?有一个
静态连接是一个非常糟糕的主意。您是否缺少一个using指令或程序集引用?您是否检查过或做过任何研究?您在哪里看到“Rows”属性:?在哪里抛出错误?问题是什么?有一个静态连接是一个非常糟糕的主意。您是否缺少一个using指令或程序集引用?您是否检查过或做过任何研究?您在哪里看到“Rows”属性:?在哪里抛出错误?问题是什么?有一个静态连接是一个非常糟糕的主意。您是否缺少一个using指令或程序集引用?您是否检查过或做过任何研究?您在哪里看到“Rows”属性:?在哪里抛出错误?问题是什么?有一个静态连接是一个非常糟糕的主意。您是否缺少一个using指令或程序集引用?您是否检查或做过任何研究?您在哪里看到“行”属性?