1

asp.net mvc中的动态与静态类型

汽车比摩托车好吗?这完全取决于您使用它的场景。在不了解情况的情况下,不可能做出这样的决定!

对于某些问题/情况,动态类型是否优于静态类型。

在这种情况下

当调用 BaseController 的 OnException() 方法时,我需要显示视图。这是一次性的事情,我只显示一次错误页面而不是黄屏死机。

假设我需要在视图上显示 ErrorMessage 和 Stacktrace。由于这是一次性的事情,因此使用动态而不是为此创建错误模型更好。

       dynamic obj = new ExpandoObject();
       obj.ErrorMessage = "message";
       obj.StackTrace = "bla bla bal";
       return to view.

什么是最佳实践。谢谢回复。

4

1 回答 1

1

“对于某些问题/情况,动态类型比静态类型更好吗?”

当然。

“假设我需要在视图上显示 ErrorMessage 和 Stacktrace。因为这是一次性的事情,使用动态不是为此创建错误模型更好。”

在这种情况下,您通常有一个可以携带错误的视图模型。有时我使用基本视图模型类:

public class ViewModelBase
{
      public string ErrorMessage { get; set; }

}

大多数情况下,我会将错误放在 TempData 中:

TempData["Errors"] = "";
于 2011-06-11T18:16:03.090 回答