熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> .NET編程 >> 正文

ASP.NET MVC 4框架揭秘:Controller類型(2)[2]

2013-11-13 12:31:32  來源: .NET編程 

  //如果不允許采用後備命名空間返回Null

  if (!useNamespaceFallback)

  {

  return null;

  }

  //通過當前ControllerBuilder的默認命名空間進行匹配

  contrllerType = thisGetControllerType(

  ControllerBuilderCurrentDefaultNamespaces types)

  if (null != contrllerType)

  {

  return contrllerType;

  }

  //如果只存在一個類型名稱匹配的Controller則返回之

  if (typesLength ==

  {

  return types[];

  }

  //如果具有多個類型名稱匹配的Controller則拋出異常

  throw new InvalidOperationException(具有多個匹配的Controller類型

  }

  }

  如果RouteData的DataTokens中不存在這樣一個UseNamespaceFallback路由變量或者它的值為True則先采用當前ControllerBuilder的默認命名空間列表進一步對Controller類型進行解析如果存在唯一的類型則直接當作目標Controller類型返回如果通過兩組命名空間均不能得到一個匹配的ControllerType並且只存在唯一一個與傳入的Controller名稱相匹配的類型則直接將該類型作為目標Controller返回如果這樣的類型具有多個則直接拋出InvalidOperationException異常

       返回目錄ASPNET MVC 框架揭秘

       編輯推薦

       ASP NET開發培訓視頻教程

       Microsoft NET框架程序設計視頻教程

       Java程序性能優化讓你的Java程序更快更穩定

       Visual C++音頻/視頻技術開發與實戰

[]  []  


From:http://tw.wingwit.com/Article/program/net/201311/16082.html
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.