कुछ दिन पहले .NET कोर आरसी 1 जारी हो गया था और मैंने इसे इसके बारे में बहुत कुछ पढ़ने के बाद पहली बार जाने दिया, मुझे यह पसंद है लेकिन यह थोड़ा अलग है। मैं एमवीसी 6 & .NET कोर में एक छोटा ब्लॉग (एमवीसी 5 में निर्मित) माइग्रेट करने की कोशिश कर रहा हूं। यह मुश्किल नहीं था, लेकिन मैं वास्तव में एमवीसी 5 में सटीक वही ग्लोबल.एक्सएक्स सेटिंग्स को फिर से बनाने के लिए संघर्ष कर रहा हूं, एएसपी.नेट 5 में अब ग्लोबल.एक्सएक्स नहीं है इसलिए मैं यह समझने में असमर्थ हूं कि अधिकांश सेटिंग्स के प्रतिस्थापन क्या है कर रहे हैं?ASP.NET को वैश्विक.एक्सएक्स माइग्रेट करना 5
protected void Application_Start()
{
ViewEngines.Engines.Clear();
ViewEngines.Engines.Add(new RazorViewEngine());
MvcHandler.DisableMvcResponseHeader = true;
AntiForgeryConfig.SuppressXFrameOptionsHeader = true;
BundleConfig.RegisterBundles(BundleTable.Bundles);
RouteConfig.RegisterRoutes(RouteTable.Routes);
}
protected void Application_BeginRequest()
{
Response.AddHeader("X-Frame-Options", "DENY");
}
protected void Application_EndRequest()
{
if (Response.StatusCode != 301 && Response.StatusCode != 302) return;
var targetUrl = Response.RedirectLocation.Replace("ReturnUrl", "url");
Response.RedirectLocation = targetUrl;
}
protected void Application_AuthenticateRequest(object sender, EventArgs e)
{
string typeName;
byte userType = (byte)(Context.Request.IsAuthenticated ? byte.Parse(User.Identity.Name.Split('|')[2]) : 1);
switch (userType)
{
case 1: { typeName = "Client"; break; }
case 2: { typeName = "Admin"; break; }
default: { typeName = "Client"; break; }
}
var roles = new[] { typeName };
if (Context.User != null)
{
Context.User = new GenericPrincipal(Context.User.Identity, roles);
}
}
private void Application_Error(object sender, EventArgs e)
{
Exception ex = Server.GetLastError();
if (ex is HttpAntiForgeryException)
{
Response.Clear();
Server.ClearError();
Response.Redirect("/error/cookie", true);
}
}
कृपया, ऊपर दिए गए कोड को एमवीसी 6 में किसी भी सेटिंग को छोड़ दिए बिना काम करने का कोई तरीका है? यह मेरे लिए एक सौदा ब्रेकर है, धन्यवाद।
यह कोड एक गीथब रेपो पर रखने के लिए एक दिलचस्प प्रयोग होगा और रूपांतरण के बाद एमवीसी 6 परियोजनाओं के साथ-साथ इसे एक तरफ रखेगा। यदि आप कोड को धक्का देते हैं तो मुझे बताएं, मैं देखना चाहता हूं कि यह कैसा दिखता है और इसे बंद करने के लिए क्या होगा। – davidfowl
आप ग्लोबल.एएसपीएक्स में जो कुछ भी कर रहे हैं वह कर सकते हैं लेकिन कस्टम कस्टम मिडलवेयर का उपयोग करते हैं। एएसपीनेट कोर में मिडलवेयर बनाना बहुत आसान है। http://andrewlock.net/adding-default-security-headers-in-asp-net-core/ –