带参数的构造方法:缺少返回int值

时间:2014-11-11 13:37:56

标签: c# asp.net xml

我的课程包含许多属性:

public class Report
{
    public int reportId { get; set; }
    public string sentDate { get; set; }
    public string photoName { get; set; }
    public string state { get; set; }
    public string patientName { get; set; }
    public string doctorName { get; set; }
    public string sex { get; set; }
    public int isPregnant { get; set; }
    public float weight { get; set; }
    public float height { get; set; }
    public int age { get; set; }
    public string information { get; set; }
    public string response { get; set; }

然后我用argmuents实现一个构造函数:

public Report(int id, string photoName, string sentDate, string state,string response)
{
    this.reportId = id;
    this.photoName = photoName;
    this.sentDate = sentDate;
    this.state = state;
    this.response = response;
}

最后我实现了调用此构造函数的方法:

 public static List<Report> GetListReportByEmail(string email)
{      
    DataTable dt = SqlHelper.ExecuteDataset(
        new SqlConnection(Tls.ConnStr), 
        "spReportGetByEmail", 
        email).Tables[0];
    List<Report> tempItems = new List<Report>();
    if (dt.Rows.Count != 0)
    {

        foreach (DataRow rw in dt.Rows)
        {
            tempItems.Add(
                new Report(
                    int.Parse(rw["ReportId"].ToString()), 
                    Tls.GetBasicUrl() + "/Zdnn000kjUpload/__zd__MedicalConsultation/" 
                        + rw["PhotoName"].ToString(), 
                    DateTime.Parse(rw["SentDate"].ToString()).ToString("dd/M/yyyy"), 
                    rw["State"].ToString(), 
                    rw["Response"].ToString()));
        }
        return tempItems;
    }
    else
    {
        return null;
    }
}

但是当我检查返回时,除了构造函数中提到的属性之外,我还发现了所有类型为intfloat且值为0的属性。

我需要这种方法来提供Web服务。当我测试这个网络服务器时,我发现了构造函数中提到的属性,还有未填充的intfloat

<Report>
<reportId>4</reportId>
<sentDate>21/6/2014</sentDate>
<photoName>
http://localhost:2055/Zdnn000kjUpload/__zd__MedicalConsultation/
</photoName>
<state/>
<isPregnant>0</isPregnant>
<weight>0</weight>
<height>0</height>
<age>0</age>

<response/>
</Report>

知道存储过程正常。

所以任何人都可以帮助我只传输构造函数中提到的变量:我不需要传输ageheightweightisPregnant < / p>

感谢。

1 个答案:

答案 0 :(得分:0)

您的构造函数仅分配以下内容:

this.reportId = id;
this.photoName = photoName;
this.sentDate = sentDate;
this.state = state;
this.response = response;

为什么还要填充其他属性(isPregnantweightheightage等)?您没有在任何时候分配这些属性值。