最近有人问我为什么使用ContentResult
而不是返回string
.不幸的是,我不能给出比"这是最好的实践"更好的答案了.
有没有人有更好的答案?
为了更好地理解这个问题.有什么关系呢?
public ActionResult Foo(){
return Content("Some string");
}
public string Bar(){
return "Some string";
}
最近有人问我为什么使用ContentResult
而不是返回string
.不幸的是,我不能给出比"这是最好的实践"更好的答案了.
有没有人有更好的答案?
为了更好地理解这个问题.有什么关系呢?
public ActionResult Foo(){
return Content("Some string");
}
public string Bar(){
return "Some string";
}
如果您返回的不是ActionResult
,那么默认行为是创建一个ContentResult
,用于包装调用ToString()
的结果,不管返回什么(如果返回null
,则返回EmptyResult
).我能想到的明确返回ContentResult
的原因:
ToString()
电话.如果返回string
,这并不重要,但是返回复杂类型可能会产生意想不到的结果.