如何使用实体框架而不是通过使用存储过程在MVC中的Crystal Report中传递参数

时间:2019-06-27 06:55:50

标签: crystal-reports

我想使用Entity Framework(而不是使用存储过程)在水晶报表中传递参数。

我通过使用Entity Framework MVC5进行尝试:

ReportDocument Rd = new ReportDocument();
        Rd.Load(Path.Combine(Server.MapPath("~/reports"), "CrystalReportEmp.rpt"));

ParameterFieldDefinitions crParameterFieldDefinitions;
ParameterFieldDefinition crParameterFieldDefinition;
ParameterValues crParameterValues = new ParameterValues();
ParameterDiscreteValue crParameterDiscreteValue = new 
ParameterDiscreteValue();

crParameterDiscreteValue.Value = name;
crParameterFieldDefinitions = Rd.DataDefinition.ParameterFields;
crParameterFieldDefinition = crParameterFieldDefinitions["name"];
crParameterValues = crParameterFieldDefinition.CurrentValues;
crParameterValues.Clear();
crParameterValues.Add(crParameterDiscreteValue);
crParameterFieldDefinition.ApplyCurrentValues(crParameterValues);
Rd.SetParameterValue("Name", name);

Rd.SetDataSource(Obj.Table_Signupangular.Where(x=>x.Name==name).ToList());

错误:

{"The types of the parameter field and parameter field current values are not compatible."}

0 个答案:

没有答案