سؤال

ولقد غيرت MembershipProvider في بلدي ASP.net MVC على شبكة الإنترنت، والآن لا المشار إليها أنماط للصفحة تسجيل الدخول بشكل صحيح. وفيما يلي نسخة من العلامة النماذج في بلدي الملف web.config إذا كان هذا يمكن أن يكون السبب. يبدو مطابقا الرغم من واحد الناتجة عن مشروع جديد باستثناء اسم ومهلة السمة.

<authentication mode="Forms">
      <forms loginUrl="~/Account/Login" name=".ADAuthCookie" timeout="10" />
</authentication>

وعندما أزور الصفحة الآن، العلامة الارتباط لCSS تبدو مثل هذا:

<link href="../Content/Site.css" rel="stylesheet" type="text/css" />

وعندما <م> يجب تبدو مثل هذا:

<link href="../../Content/Site.css" rel="stylesheet" type="text/css" />
هل كانت مفيدة؟

المحلول 2

وبفضل إيان أوكسلي. لم تحل المشكلة مع ResolveClientUrl بالرغم من ذلك.

وكان للتعامل مع ملف web.config. كان الرمز الذي يشبه هذا:

<authorization>
  <deny users="?" />
  <allow users="*" />
</authorization>

وأضفت العنصر الموقع أدناه واحدة رئيسية، وقال إن أي شخص يمكن عرض هذا المحتوى، وأنها تعمل الآن. وتبين أن الملفات مثل ملف CSS لم تكن تشاهدها حتى أذن من قبل. التي تم إصلاحه الآن.

وهذا ما أضفت:

<location path="Content">
   <system.web>
      <authorization>
         <allow users="*" />
      </authorization>
   </system.web>
</location>

نصائح أخرى

وأنا لم تستخدم ASP.NET MVC بعد نفسي، ولكن هل يمكن أن حاول استخدام <لأ href = "http://msdn.microsoft.com/en-us/library/system.web.ui.control.resolveclienturl .aspx اتصال "يختلط =" نوفولو noreferrer "> ResolveClientUrl عند كتابة خارج أ href لCSS الخاص بك:

<link href="<%= ResolveClientUrl("../../content/Site.css") %> rel="stylesheet" type="text/css" />
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top