2014-04-17 59 views
-8

我有一個登錄頁面,用戶名是emaloyee ID是一個整數。然而,爲了驗證我的日誌,我需要將其轉換爲字符串,但它繼續給我同樣的錯誤。不能隱式轉換類型int?以字符串[]

我已經嘗試了所有的這些,但門檻得到同樣的錯誤:

string s = i.ToString(); 
string s = Convert.ToString(i); 
string s = int.Parse(i); 

serializeModel.roles = user.RoleROLE_ID; error: Cannot implicitly convert type 'int' to 'string[]' 

我想這個人做什麼呢?

enter image description here

這裏是我的代碼:

[HttpPost] 
     public ActionResult Login(LoginModel model, string returnUrl = "") 
     { 
      if (ModelState.IsValid) 
      { 
       int modelID = int.Parse(model.EMP_ID); 
       var user = db.EMPLOYEEs.Where(u => u.EMP_ID == modelID && u.EMP_PASSWORD == model.EMP_PASSWORD).FirstOrDefault(); 
        if (user !=null) 
       { 
        var roles = db.EMPLOYEEs.Select(m => m.RoleROLE_ID).ToArray(); 

        CustomPrincipalSerializeModel serializeModel = new CustomPrincipalSerializeModel(); 
        serializeModel.UserId = user.EMP_ID; 
        serializeModel.FirstName = user.EMP_FIRST_NAME; 
        serializeModel.LastName = user.EMP_LAST_NAME; 
        serializeModel.roles = user.RoleROLE_ID; 
+1

您試圖單個int轉換爲字符串數組,這不會工作 – Sionnach733

+0

這不是假設是一個數組了,因爲我的角色的表,當員工被註冊的作用將是分配給他們。所以,當他們登錄時,信息來自員工表,角色已經被選中了......所以沒有數組。 – NilR

+0

user.RoleROLE_ID.Value.ToString() –

回答

3

您無法分配中斷?到一個字符串數組...

這應該解決它。

serializeModel.roles = new string[]{ user.RoleROLE_ID.ToString() }; 
+0

它現在正在工作。謝謝:) – NilR

+2

如果它在工作,接受它,以便其他同樣問題的人不再看得更遠了 – Hatsjoem

相關問題