2013-04-28 85 views
1

我升級到NancyFx v0.17。 當我用模型打開視圖時,現在出現以下錯誤。Nancy-0.17,startIndex不能大於字符串的大小

[ArgumentOutOfRangeException: startIndex cannot be larger than length of string. 
Parameter name: startIndex] 
    System.String.InternalSubStringWithChecks(Int32 startIndex, Int32 length, Boolean fAlwaysCopy) +10695231 
    System.String.Substring(Int32 startIndex) +12 
    Nancy.Conventions.<>c__DisplayClass19.<BuildContentDelegate>b__e(ResponseFactoryCacheKey pathAndRootPair) +271 
    System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(TKey key, Func`2 valueFactory) +72 
    Nancy.Conventions.<>c__DisplayClass2.<AddDirectory>b__0(NancyContext ctx, String root) +614 
    Nancy.DefaultStaticContentProvider.GetContent(NancyContext context) +127 
    Nancy.NancyEngine.HandleRequest(Request request, Func`2 preRequest) +198 
    Nancy.NancyEngine.HandleRequest(Request request) +154 
    Nancy.Hosting.Aspnet.NancyHandler.ProcessRequest(HttpContextBase context) +86 
    Nancy.Hosting.Aspnet.NancyHttpRequestHandler.ProcessRequest(HttpContext context) +121 
    System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +341 
    System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +69 

當我升級,所以我的代碼不應該成爲問題,我沒有改變任何東西(因爲它是在v0.16工作之前5分鐘)。

例如導致此錯誤的視圖

http://localhost:9742/_Nancy/info (Diagnostics is turned on) 

http://localhost:9742/messages/all 

例如, NancyModule

public class MessageModule : BaseModule 
    { 
     public MessageModule() : base("messages") 
     { 
      var message = new Message 
         { 
          Id = 1 , 
          Name = "ashutosh", 
          Email= "[email protected]", 
          MessageContent ="Wassup Baker" 
         }; 
      var message2 = new Message 
      { 
       Id = 1, 
       Name = "Awesome", 
       Email = "[email protected]", 
       MessageContent = "Wassup Baker" 
      }; 
      var messages = new List<Message> {message, message2}; 
      Model = messages; 

      Get["/all"] = parameters => 
       { 
        return View["/Message/Index", Model]; 
       };   
     } 

相應的視圖

@inherits NancyRazorViewBase<System.Collections.Generic.IEnumerable<Message>> 

@{ 
    ViewBag.Title = "title"; 
    Layout = "/Common/_Layout"; 
} 

@RenderBody() 

<body> 
    <section id ="Messages"> 
     <div> 
      <div> 
       <table> 
        <thead> 
         <tr> 
          <th>Name</th> 
          <th>Message</th>        
         </tr> 
        </thead> 
        <tbody> 
         @foreach (var m in Model) 
         { 
          <tr> 
           <td>@m.Name</td> 
           <td><p>@m.MessageContent</p></td>        
          </tr> 
         } 
        </tbody> 
       </table> 
      </div> 
     </div>    
    </section>  
</body> 

回答

2

這已得到解決。你應該能夠更新到0.17.1,錯誤應該消失。謝謝

+0

我測試了這個,它修復了這個問題。 – 2013-04-29 14:55:05

相關問題