【问题标题】:how to convert 'int' to 'objectParameter'?如何将“int”转换为“objectParameter”?
【发布时间】:2020-01-30 10:15:31
【问题描述】:

我看到反之亦然,可以使用 objectParameter 中的“.value”

int repid = Int32.Parse(reportId);

作为参数快速传递给 SP 会出错

无法将“int”转换为 'System.Data.Entity.Core.Objects.ObjectParameter'

public virtual int usp_AuditLogger(  ObjectParameter reportId)
{
   //this is where I need that value
}

【问题讨论】:

    标签: c# .net entity-framework stored-procedures


    【解决方案1】:

    ObjectParameter 不是从一种类型更改为另一种类型的数据类型,但您可以通过创建ObjectParameter 类的新实例将值分配给该类的Value 属性。

     int anyValue=12;
     ObjectParameter reportId=new ObjectParameter("reportId", anyValue);
    

    【讨论】:

      【解决方案2】:

      ObjectParameter 是一个具有两个属性的类,名称和值。因此,在您的方法中,如果您真的想在参数中传递 ObjectParameter,您必须在示例中创建名称为 reportId 且值为 reportId 的对象。

       public virtual int usp_AuditLogger(ObjectParameter report )
          {
          int _reportId = report.value;
             //this is where i need that value
          }
      

      或者您可以更改函数中的输入参数以期望一个 int:

      public virtual int usp_AuditLogger(int reportId)
      {
         //this is where i need that value
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2014-05-22
        • 1970-01-01
        • 2020-07-17
        • 2013-04-18
        • 1970-01-01
        • 2016-03-12
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多