无法将类型 'BatchAPI_Demo.Models.SubError' 隐式转换为 'System.Collections.Generic.List<BatchAPI_Demo.Models.SubError>'
Cannot implicitly convert type 'BatchAPI_Demo.Models.SubError' to 'System.Collections.Generic.List<BatchAPI_Demo.Models.SubError>'
我有一个模型class
public class ErrorLog
{
public int CorrelationID { get; set; }
public List<SubError> errors { get; set; }
}
域Class
public class SubError
{
public string source { get; set; }
public string description { get; set; }
}
控制器代码
ErrorLog objError = new ErrorLog();
SubError objsubErr = new SubError();
if (req.Businessunit == "")
{
objError.CorrelationID = 400;
objsubErr.source = "Error Occurred";
objsubErr.description = "Units cannot be blank";
objError.errors = objsubErr;
return JsonConvert.SerializeObject(objError);
}
我在将 objSuberr 分配给错误时遇到错误。在错误 class 中分配来源和描述值的解决方案可能是什么。
我是一个新手。可能是一个简单的出路,但我无法追踪它。如有帮助,将不胜感激。
错误消息不言自明。您正在尝试将 SubError
类型的对象分配给 List<SubError>
类型的对象。如果您需要保留 List
,则 objError.errors = objsubError
变为 objError.errors.Add(objsubError)
。
我没看到你在哪里初始化 errors
属性。在这种情况下,您可以使用 objError.errors = new List<SubError> { objsubError };
来确保 属性 被初始化 并且 它将新对象添加到列表中。
您正在尝试分配一个单一的 SubError 到 SubError 列表。你不能。它们是不同的类型。一个是 List,另一个是 Singular Object,所以你不能 assign.
您需要将单个对象添加到列表中。
objError.errors.Add(objSubErr);
在您的情况下,您还需要先实例化列表:
objError.errors = new List<SubError>();
objError.errors.Add(objSubErr);
我有一个模型class
public class ErrorLog
{
public int CorrelationID { get; set; }
public List<SubError> errors { get; set; }
}
域Class
public class SubError
{
public string source { get; set; }
public string description { get; set; }
}
控制器代码
ErrorLog objError = new ErrorLog();
SubError objsubErr = new SubError();
if (req.Businessunit == "")
{
objError.CorrelationID = 400;
objsubErr.source = "Error Occurred";
objsubErr.description = "Units cannot be blank";
objError.errors = objsubErr;
return JsonConvert.SerializeObject(objError);
}
我在将 objSuberr 分配给错误时遇到错误。在错误 class 中分配来源和描述值的解决方案可能是什么。 我是一个新手。可能是一个简单的出路,但我无法追踪它。如有帮助,将不胜感激。
错误消息不言自明。您正在尝试将 SubError
类型的对象分配给 List<SubError>
类型的对象。如果您需要保留 List
,则 objError.errors = objsubError
变为 objError.errors.Add(objsubError)
。
我没看到你在哪里初始化 errors
属性。在这种情况下,您可以使用 objError.errors = new List<SubError> { objsubError };
来确保 属性 被初始化 并且 它将新对象添加到列表中。
您正在尝试分配一个单一的 SubError 到 SubError 列表。你不能。它们是不同的类型。一个是 List,另一个是 Singular Object,所以你不能 assign.
您需要将单个对象添加到列表中。
objError.errors.Add(objSubErr);
在您的情况下,您还需要先实例化列表:
objError.errors = new List<SubError>();
objError.errors.Add(objSubErr);