将价值观纳入一个阶级

时间:2014-11-11 15:38:38

标签: c# class

我有一个XML,如下所示

<Country>
  <Name>Countryname</Name>
  <Continent>ContinentName</Continent>
  <Zone>TimeZone</Zone>
  <India>
    <State>
      <StateName>nameoftheState</StateName>
      <StateCode>codeofthestate</StateCode>
    </State>
  </India>
</Country>

必须将此XML填充到一个类中,其结构如下所示

 public class Country
    {
        public string Name { get; set; }
        public string Continent { get; set; }
        public string Zone { get; set; }
        public India IndiaInfo { get; set; }

    }

   public class India
    {
        public List<State> StateInfo{get; set;}
    }

    public class State
    {
        public string StateName { get; set; }
        public string StateCode { get; set; }
    }

将XML转换为对象不是一个选项,因为这个XML将通过另一个层来解析XML并取出填充类所需的单个元素。我已编写代码来获取这些值并填充对象如下图所示

public void PopulateCountry(string name, string Asia , string GMT , string AbcState, string RichState)
    {
        Country objCountry = new Country();
        objCountry.Continent = Asia;
        objCountry.Name = name;
        objCountry.Zone = GMT;

        **India objIndia = new India();
        objIndia.StateInfo = new List<State>;
        State objState = new State();
        objState.StateCode = AbcState;
        objState.StateName = RichState;
        objIndia.StateInfo.Add(objState);
        objCountry.IndiaInfo = objIndia;**



    }

在上面填充类Country的对象的方法中,我采用了暴力方法并将值放在类中,代码也给出了结果。但是,此代码不遵循某些最佳实践,可以进一步增强/重写,尤其是Bold中的那个。有人可以指出我失踪的C#的东西/功能/做法。

1 个答案:

答案 0 :(得分:0)

https://codereview.stackexchange.com/questions/69533/populating-values-into-a-c-object

我实际上是在问题中发布的代码/示例中遵循的标准问题之后,并且可以在codereview stackexchange上解决相同问题。感谢所有帮助并指出了正确的论坛