无法将类型字符串隐式转换为 int asp.net mvc

Cannot implicitly convert type string to int asp.net mvc

所以我想在视图模型中添加一个三元运算符。注意:RegionId 是整数。这是代码

 var model = (from p in _context.ProductGun
              where p.ProductId == productId
              select new GunViewModel)
              {
                  RegionId = p.RegionId == 1 ? "DEV" : "TEST"; //error
              }

我试过: RegionId = p.RegionId.ToString() == "1" ....; RegionId = p.RegionId == Convert.ToInt32(1); 反之亦然。但没有什么是正确的。抱歉打错了。我用手机输入这个

错误告诉您 RegionId 是一个 Int 并且您试图在区域 ID 为 1 的任何时候将 "DEV" 分配给它。那是行不通的。尝试在其中输入一个零并在您要查找的任何地方检查它 "DEV"

RegionId = p.RegionId == 1 ? 0 : p.RegionId;

这是答案:

我将 Viewmodel 中 RegionId 的数据类型更改为 String。由于是int转int,不能隐式转换类型

RegionId = p.RegionId == 1 ? "DEV" : "TEST"; Where: RegionId = string p.RegionId = int