我有一个登录页面,Username是一个Integer的emaloyee ID。但是要验证我的登录,我需要将其转换为字符串,但它会继续给我同样的错误。
我已经尝试了所有这些但是得到同样的错误:
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[]'
我想用这个做什么?
这是我的代码:
[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;
答案 0 :(得分:3)
你不能指定一个int?到一个字符串数组...
这应该解决它。
serializeModel.roles = new string[]{ user.RoleROLE_ID.ToString() };