C# 更新我的数据库
我是亚音速的新手,在尝试从sql server更新数据库时遇到问题。我创建了一个gridview,但仍然没有返回更新结果。你能帮帮我吗?它在dc.AddMostaHse()上获取错误代码; (无法将类型“void”隐式转换为“object”) 下面是DataAccess.cs页面的代码 公共无效AddMostaHse() {C# 更新我的数据库,c#,.net,asp.net,subsonic,subsonic3,C#,.net,Asp.net,Subsonic,Subsonic3,我是亚音速的新手,在尝试从sql server更新数据库时遇到问题。我创建了一个gridview,但仍然没有返回更新结果。你能帮帮我吗?它在dc.AddMostaHse()上获取错误代码; (无法将类型“void”隐式转换为“object”) 下面是DataAccess.cs页面的代码 公共无效AddMostaHse() { Mosta.MostaHSE1 xx = new MostaHSE1(); xx.ID = 94; xx.FunctionL
Mosta.MostaHSE1 xx = new MostaHSE1();
xx.ID = 94;
xx.FunctionLocation = "lza94";
xx.acno = 12;
xx.Save();
}
DataAccess dc = new DataAccess();
gvtest.DataSource = dc.AddMostaHse();
gvtest.DataBind();
}
将其与gridview绑定。
{
Mosta.MostaHSE1 xx = new MostaHSE1();
xx.ID = 94;
xx.FunctionLocation = "lza94";
xx.acno = 12;
xx.Save();
}
DataAccess dc = new DataAccess();
gvtest.DataSource = dc.AddMostaHse();
gvtest.DataBind();
}
您的方法AddMostaHse正在返回void(无返回)。您无法将datagrid绑定到void。如果要将datagrid绑定到刚才在该方法中创建的对象,请将您的方法更改为:
public MostaHSE1 AddMostaHse() {
Mosta.MostaHSE1 xx = new MostaHSE1();
xx.ID = 94;
xx.FunctionLocation = "lza94";
xx.acno = 12;
xx.Save();
return xx;
}
我觉得奇怪的是,为什么要将一个对象绑定到datagrid(更不用说为什么要将这样创建的对象绑定到datagrid,我假设您只是在测试),通常是绑定一组对象。因此,这可能不会带来您想要的结果
datagrid更常见的候选者是:
public IEnumerable<MostaHSE1> GetAllMostaHse() {
return Mosta.MostaHSE1.All();
}
public IEnumerable GetAllMostaHse(){
返回Mosta.MostaHSE1.All();
}
这没有多大意义。您的gridview应该从读取操作绑定。您当前正在根据您提供的内容将其绑定到插入/写入操作。您可能应该获取MostaHSE1()的集合并将其显示在gridview中。读取函数的返回类型很可能是DataTable或DataSet
您的AddMostHse1()似乎它应该可以工作,但您希望在gridview之外针对不同的事件来执行此操作。可能是RowEditEnding或其他事件。谢谢您的帮助。您对无效的看法是正确的。那么您有什么建议?显示更新的最佳方法是什么?如果造成任何不便,请告诉我,但我是此系统的新手。非常感谢您的帮助不耐烦!