2013-08-02 68 views
0

- 我沒有絲毫的想法如何去做這個和任何幫助將不勝感激。誠實地檢索基於枚舉的設置

所以我有類處理文件信息和基於文件信息它將以兩種可能的方式之一存儲。決定哪一個處理文件將基於枚舉。

public class Route1 
{ 
    public enum Route1Type 
    { 
     OneWay, 
     TwoWay 
    }; 
} 

其他枚舉類:

public class Route2 
{ 
    public enum Route2Type 
    { 
     publicMade, 
     privateMade 
    }; 
} 

主類處理枚舉:

public class MyClass 
    { 
     private MyService _Svc; 
     public IOtherClass OtherClass{ get; private set; } 

     public enum Route2Type { publicMade, privateMade } 
     public enum Route1Type { OneWay, TwoWay} 

     public MyClass(MyService svc, Route2Type route2Type) 
     { 
      _Svc = svc; 

      //retrieve from MyService for the route2 type configuration based on the enum 
      //retrieve from MyService the route1 type 
      /*if (route2Type.Equals(route1Type.OneWay)) 
       OtherClass= new OtherClass.OneWay(); 
      else 
       OtherClass= new OtherClass.TwoWay(); 
      */ 
     } 

我迷失在哪裏開始想我怎麼能實現什麼是評論。任何幫助都會很棒。

單向()

public OneWay(string user, string password, string aurl) 
     { 
      _resource = new Resource(new WebdavSession(new NetworkCredential(user, password)), aurl); 
      _aurl = aurl; 

_user =用戶; }

雙向

public TwoWay(string aPath) 
     { 
      _aPath = aPath; 
     } 

爲MyService

public MyService(Guid AGuid, Guid BGuid) 
     { 
      _aGuid = AGuid; 
      _bGuid = BGuid; 
     } 

回答

0
你只是想驗證一個枚舉值route2Type有

if(route2Type == Route2Type.publicMade) 
     OtherClass= new OtherClass.OneWay(); 
else 
     OtherClass= new OtherClass.TwoWay(); 
+0

謝謝 - 但現在與他OtherClass.Oneway()....和所有的「OtherClass」調用它被強調在編譯時指出,我缺少參數傳遞。 OneWay,TwoWay方法 - 非常感謝您的幫助 – Masriyah

+1

您需要傳遞參數。你可能想閱讀C#,我明白[Jon Skeet的書](強烈推薦)(http://www.amazon.com/Depth-Second-Edition-Jon-Skeet/dp/1935182471) – Jonesopolis

+0

我必須定義我的枚舉值? – Masriyah