مشکل در استفاده از sp در Linq هنگام گزارشگیری با stimulsoftreprot
سلام
من کد زیر را نوشته ام برنامه هم بخوبی کار می کند
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 برای گزارش گیری استفاده کنم
باسپاس
نقل قول: مشکل در استفاده از sp در Linq هنگام گزارشگیری با stimulsoftreprot
آیا q دیتا دارد؟ جایی که داره خطا میده یک ToList بزنید.
نقل قول: مشکل در استفاده از sp در Linq هنگام گزارشگیری با stimulsoftreprot
نقل قول:
نوشته شده توسط
parvizwpf
آیا q دیتا دارد؟ جایی که داره خطا میده یک ToList بزنید.
با کد میشه توضیح بدهید
نقل قول: مشکل در استفاده از sp در Linq هنگام گزارشگیری با stimulsoftreprot
داده پشتیبانی نمیشود
دیتاتیبل کنید
نقل قول: مشکل در استفاده از sp در Linq هنگام گزارشگیری با stimulsoftreprot
باتشکر از همه دوستان
حل شد
//1)
public StiReport report=new StiReport();
//2)
public void Regdate(StiReport report)
{
var db = new CameraDataContext();
using (CameraDataContext context=new CameraDataContext())
{
var q = (from row in context.Users_all()//context.Users//
select new
{
row.Name,
row.Family,
row.UserName
});
report.RegData("q", q.ToList());
}
}
private void btnPrint_Click(object sender, EventArgs e)
{
//3)
report.Load("rUsersAll.mrt");
Regdate(report);
report.Show();
}