2013-08-24 5 views
6

आंशिक दृश्य डीबग मोड में प्रस्तुत करते हैं लेकिन रिलीज़ मोड नहीं।नैन्सी रेजर आंशिक विचार रिलीज मोड में प्रस्तुत नहीं करते

स्टैक ट्रेस

[ArgumentNullException: Value cannot be null. 
Parameter name: key] 
    System.Collections.Concurrent.ConcurrentDictionary`2.GetOrAdd(TKey key, Func`2 valueFactory) +5895838 
    Nancy.ViewEngines.DefaultViewCache.GetOrAdd(ViewLocationResult viewLocationResult, Func`2 valueFactory) +329 
    Nancy.ViewEngines.Razor.RazorViewEngine.GetOrCompileView(ViewLocationResult viewLocationResult, IRenderContext renderContext, Assembly referencingAssembly, Type passedModelType) +186 
    System.Dynamic.UpdateDelegates.UpdateAndExecute5(CallSite site, T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4) +401 
    CallSite.Target(Closure , CallSite , RazorViewEngine , ViewLocationResult , IRenderContext , Assembly , Object) +575 
    Nancy.ViewEngines.Razor.RazorViewEngine.GetViewInstance(ViewLocationResult viewLocationResult, IRenderContext renderContext, Assembly referencingAssembly, Object model) +1128 
    System.Dynamic.UpdateDelegates.UpdateAndExecute5(CallSite site, T0 arg0, T1 arg1, T2 arg2, T3 arg3, T4 arg4) +401 
    CallSite.Target(Closure , CallSite , RazorViewEngine , ViewLocationResult , IRenderContext , Assembly , Object) +495 
    Nancy.ViewEngines.Razor.<>c__DisplayClass1f.<RenderView>b__1e(Stream stream) +470 
    Nancy.ViewEngines.Razor.HtmlHelpers`1.Partial(String viewName, Object modelForPartial) +1872 
    RazorOutput.RazorView.<Execute>b__3() +632 
    Nancy.ViewEngines.Razor.NancyRazorViewBase`1.ExecuteView(String body, IDictionary`2 sectionContents) +374 
    Nancy.ViewEngines.Razor.<>c__DisplayClass1f.<RenderView>b__1e(Stream stream) +775 
    Nancy.Hosting.Aspnet.NancyHandler.ProcessRequest(HttpContextBase context) +81 
    System.Web.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +913 
    System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +165 

master.cshtml (प्रासंगिक अनुभाग केवल)

@if (IsSectionDefined("sidebar")) { 
    <div id="two-col"> 
     @RenderBody() 
    </div> 
    <div id="sidebar"> 
     @RenderSection("sidebar") 
    </div> 
} else { 
    <div id="one-col"> 
     @RenderBody() 
    </div> 
} 

index.cshtml

@inherits Nancy.ViewEngines.Razor.NancyRazorViewBase<dynamic> 
@{ Layout = "master.cshtml"; } 

// html for body, doesn't use model 

@section sidebar { 
    @Html.Partial("/sidebars/sidebar.cshtml", Model) 
} 

sidebar.cshtml (नमूना अनुभाग)

<ul> 
@foreach (var item in Model.Items) 
{ 
    <li>@Html.Raw(@item.DisplayText)</li> 
} 
</ul> 
+0

रिलीज मोड से संबंधित होने लगता है - यह https://groups.google.com/forum/#!searchin/nancy-web-framework/razor/nancy-web-framework/T95zFkxeJjg/LkWguk-xwI8J – Leslie

उत्तर

8

मुझे हाल ही में यह समस्या थी, लेकिन मेरे मास्टर लेआउट पृष्ठों से जुड़ा हुआ है। आपके इंडेक्स पेज को देखकर यह दो चीजों में से एक हो सकता है, जैसे कि, आपके मास्टर पेज का पथ या आपके आंशिक पथ। यदि आप अपने आंशिक यूआरएल पर अग्रणी स्लैश हटाते हैं या यदि आपका मास्टर पेज किसी साझा फ़ोल्डर में है, तो अपने यूआरएल (बिना स्लेश या ~ /) के पूर्ण पथ जोड़ें।

यह वह जगह है जहां मुझे समाधान मिला। https://groups.google.com/forum/#!topic/nancy-web-framework/zRLth_hl2r8

HTH

+0

धन्यवाद बहुत ज्यादा! मैंने सोचा कि मैंने कोशिश की, लेकिन जाहिर है नहीं। मेरे आंशिक रूप से अग्रणी slashes हटा दिया और सब ठीक है। :) – Leslie

+0

यह विषम है। यह कई प्रकाशनों के लिए ठीक काम कर रहा था (Azure वेबसाइट पर)। मैं लेआउट और आंशिक .cshtml फ़ाइलों के सापेक्ष पथ का उपयोग कर रहा था। पुष्टि की है कि इन्हें हटाने से समस्या हल हो गई है। – Aaron

1

हमारे मामले में समस्या यह है कि विचार हम की चर्चा करते हुए थे सेटिंग लापता थे गया था: कार्रवाई

बिल्ड: फ़ाइलों डिबग मोड में सामग्री

अर्थ थे फ़ाइल सिस्टम से पढ़ा जा रहा है, लेकिन रिहाई मोड में चलते समय रिलीज बिन फ़ोल्डर में कॉपी नहीं किया जा रहा था।

संबंधित मुद्दे