Iran58
چهارشنبه 31 اردیبهشت 1393, 13:14 عصر
سلام
من کد زیر را نوشته ام برنامه هم بخوبی کار می کند
public StiReport report=new StiReport();
public void Regdate(StiReport report)
{
var db = new CameraDataContext();
using (CameraDataContext context=new CameraDataContext())
{
var q = from row in context.Users
select
new
{
row.Name,
row.Family,
row.UserName
};
report.RegData("q",q);
}
}
private void btnPrint_Click(object sender, EventArgs e)
{
report.Load("report.mrt");
Regdate(report);
report.Show();
}
ولی هنگامیکه در linq از sp استفاده می کنم و کد زیر را می نویسم
public void Regdate(StiReport report)
{
var db = new CameraDataContext();
using (CameraDataContext context=new CameraDataContext())
{
var q = from row in context.LicenseConstant_all()
select row;
report.RegData("q", q);
}
}
private void btnPrint_Click(object sender, EventArgs e)
{
report.Load("report.mrt");
Regdate(report);
report.Show();
}
خطا می گیرد
متن خطا: The query results cannot be enumerated more than once.
لطفا راهنمای کنید که چطور از sp در linq برای گزارش گیری استفاده کنم
باسپاس
من کد زیر را نوشته ام برنامه هم بخوبی کار می کند
public StiReport report=new StiReport();
public void Regdate(StiReport report)
{
var db = new CameraDataContext();
using (CameraDataContext context=new CameraDataContext())
{
var q = from row in context.Users
select
new
{
row.Name,
row.Family,
row.UserName
};
report.RegData("q",q);
}
}
private void btnPrint_Click(object sender, EventArgs e)
{
report.Load("report.mrt");
Regdate(report);
report.Show();
}
ولی هنگامیکه در linq از sp استفاده می کنم و کد زیر را می نویسم
public void Regdate(StiReport report)
{
var db = new CameraDataContext();
using (CameraDataContext context=new CameraDataContext())
{
var q = from row in context.LicenseConstant_all()
select row;
report.RegData("q", q);
}
}
private void btnPrint_Click(object sender, EventArgs e)
{
report.Load("report.mrt");
Regdate(report);
report.Show();
}
خطا می گیرد
متن خطا: The query results cannot be enumerated more than once.
لطفا راهنمای کنید که چطور از sp در linq برای گزارش گیری استفاده کنم
باسپاس