ASP.NET MVCは NullReferenceExceptionを 潰している件 ジョニー(Joni)
About myself • .NET C#/VB.NET − 2002年 - .NET 1.0 beta − ASP.NET Web Forms, Web Services − WinForms, .NET Remoting − WPF − Windows Store Apps − ASP.NET MVC 3/4/5, Web API − ASP.NET Core
実は、 • ASP.NET MVC内部で NullReferenceExceptionを潰している • ASP.NET MVC Core と non-Core で 再現可能
再現方法は?
public IActionResult Sample() { return View(); } ControllerのActionを追加
public class PantsViewModel { public string FancyPants { get; set; } } ViewModelを追加
Viewを追加
生成されたView
VSでF5で実行 ここまで正常
しかーし!
Enable Just My Code を無効に!
VSでCtrl+Shift+F5(デバッガーの再起動)後、 ページを再度アクセスしてみる
何が起きた?
何が起きた?
対策 そだねー 使わないけど、仕方なく 大人しくViewModelを渡しておく
デバッグで確認してみる
簡単なベンチマークしてみる http://benchmarkdotnet.org/
ベンチマークの結果
• なぜ NullReferenceException を潰して いるのか? • なぜ null チェックをしないのか?
GitHubで問い合わせ! https://github.com/aspnet/Mvc/issues/7378
この件についてのブログ: https://medium.com/@joni2nja/friends-dont-let- friends-swallow-nullreferenceexception- acd949833d70
ご清聴ありがとうございました Twitter: @joni2nja Blog: https://medium.com/@joni2nja

ASP.NET MVCはNullReferenceExceptionを潰している件