コントローラーのクラス名が、渡されたコントローラー名の名前であるかどうかを確認しようとしています。ラムダ式が間違っていると思うため、正しく動作していません。正しいコントローラー名を渡していますが、エクスポート変数は常に null です。
Public Function CreateController(requestContext As System.Web.Routing.RequestContext,
controllerName As String)
As System.Web.Mvc.IController Implements
System.Web.Mvc.IControllerFactory.CreateController
Dim controller As IController = Nothing
If controllerName IsNot Nothing Then
Dim controllerClassName As String = controllerName & "Controller"
Dim export As Lazy(Of IController) = Me.container.GetExports(Of IController)().Where(
Function(c)
Return c.Value.GetType.Name = controllerClassName
End Function
).FirstOrDefault()
何か明確にする必要がある場合は、お知らせください。ありがとう!