2014-10-14 7 views
0
public class EmpModel 
{ 
    public string UserName { get; set; } 
    public string FirstName { get; set; } 
    public string LastName { get; set; } 
    public int Age { get; set; } 
    public Gender Gender { get; set; } 
    public int DepartmentId { get; set; } 
} 


#region [ Enumeration] 

public enum Gender 
{ 
    Male = 0, 
    FeMale = 1 
} 

이제 enum 값을 얻는 방법 var employees = root.Elements ("Employee"); foreach는 (직원의 VAR 요소) { VAR 직원 = 새로운 EmpModel {클래스에서 열거 형 값 가져 오기

    UserName = element.Element("UserName").Value, 
        FirstName = element.Element("FirstName").Value, 
        LastName=element.Element("LastName").Value, 
        Age=Convert.ToInt32(element.Element("Age").Value), 
        Gender= element.Element("Gender").Value, // On this line shows error 
        DepartmentId=Convert.ToInt32(element.Element("Department").Value)        
       }; 

감사 C#에서

+0

여기서 Employee 클래스는 무엇입니까? 그 반의 성 (gender) 유형은 무엇입니까? – Mukund

답변

0

열거 내부적 기본적으로 정수 (INT32)로 표시됩니다. 당신이에 해당하는 문자열을 읽는 경우

Gender = (Gender) Int32.Parse(element.Element("Gender").Value); 

: XML 파일은 문자열 "0"또는 "1"을 포함한다면이 경우, 당신은 단순히 그것에게 올바른 열거 형 캐스트 ​​다음의 구문을 분석 할 수 있습니다 열거 형의 이름은 Enum.Parse()를 사용해야합니다.

Gender = (Gender) Enum.Parse(typeof(Gender), element.Element("Gender").Value); 
관련 문제