تحتاج الى بعض المساعدة مع العرف ASP.NET MVC IExceptionFilter

StackOverflow https://stackoverflow.com/questions/1419414

سؤال

وأنا أحاول أن أجعل الخاصة ExceptionFilter. من خارج منطقة الجزاء، ASP.NET MVC يأتي مع [HandleError] السمة. هذا شيء عظيم -> ولكنه يعود بعض الخطأ أتش تي أم أل مشاهدة

وعلى هذا النحو، وأنا الرغبة في إعادة بعض رسالة خطأ سلمان. لذلك أنا اتخاذ بلدي.

والآن، كل شيء يعمل بشكل كبير حتى واختبار لي رابط. وأبقى احصل على خطأ. هذه هي الرسالة ....

C:\Temp\curl-7.19.5>curl -i http://localhost:6969/search/foo?name=1234&key=test1xxx
HTTP/1.1 401 Unauthorized
Server: ASP.NET Development Server/9.0.0.0
Date: Mon, 14 Sep 2009 01:54:52 GMT
X-AspNet-Version: 2.0.50727
X-AspNetMvc-Version: 1.0
Cache-Control: private
Content-Type: application/json; charset=utf-8
Content-Length: 6
Connection: Close


"Hi StackOverflow"'key' is not recognized as an internal or external command,
operable program or batch file.

C:\Temp\curl-7.19.5>

وطيب - وهذا لا معنى له. يتيح السماح في بعض رمز لشرح ما أحاول القيام به، ثم ...

public class HandleErrorAsJson : FilterAttribute, IExceptionFilter
{
    public void OnException(ExceptionContext filterContext)
    {
        // Snip normal checks and stuff...

        // Assume we've figured out the type of error this is.
        // I'm going to hardcode it here, right now.
        int statusCode = 401;
        string message = "Hi StackOverflow";

        // Now prepare our json output.
        filterContext.Result = new JsonResult
            {
                Data = message
            };

        // Prepare the response code.
        filterContext.ExceptionHandled = true;
        filterContext.HttpContext.Response.Clear();
        filterContext.HttpContext.Response.StatusCode = statusCode;
    }
}

وولهذا قانون بلدي .... وانها تعمل شيء على ولكنها ليست كذلك.

وماذا يعني هذا 'مفتاح' الشيء يعني؟ ما يكون فاتني، تحاول أن تفعل؟

الرجاء المساعدة!

هل كانت مفيدة؟

المحلول

وجدت جوابي -> اضطررت لوضع رابط في ".." (الاقتباس) وإلا فإنه يحاول تشغيل كل ما هو بعد رمز العطف، كما أمر أو شيء

ولا يدري لماذا، ولكن هذا يصلح له.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top