【发布时间】:2015-01-30 09:48:57
【问题描述】:
我正在尝试使用来自 SQL 的数据填充表,并且我必须在查询中进行查询才能获得预期的结果。
这是我想要做的:
// Queries
var transakcionet = db.Query("SELECT * FROM Ditari WHERE IDUrdheresa = @0", ID);
// IDKlientit has unique value so the below query will always return one row
var klienti = "SELECT cEmertimi_i_klientit FROM Klienti WHERE (IDKlientit = @0)";
<tbody>
@foreach(var transakcioni in transakcionet){
<tr>
// This works
@foreach(var kontoja in db.Query(kontoTrans, transakcioni.IDKontos)){
<td>@kontoja.cNumri_i_kontos</td>
}
// This is what is causing the error (i guess)
@foreach(var klja in db.Query(klienti, transakcioni.IDKlientit)){
<td>@klja.cEmertimi_i_klientit</td>
}
</tr>
</tbody>
我不知道我错过了什么,但是。
这是错误信息:
没有为一个或多个必需参数指定值。
说明:在执行当前 Web 请求期间发生未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。
异常详细信息:System.Data.OleDb.OleDbException:没有为一个或多个必需参数提供值。
【问题讨论】:
-
你能展示
db.Query的实现吗? -
db = Database.Open("nameofdb");
-
是属性
transakcioni.IDKlientit总是!= null? -
是的,它是这张桌子的钥匙……
标签: c# sql foreach parameter-passing