سؤال

وايم تحاول استخدام عنصر تحكم تحميل الملفات من المكتبة السيطرة obout، أنا حقا مثل ذلك، وأعتقد أن لها بقعة تماما من دون أي ومضة! ..

وأنا تحميل المثبت كامل، لعبت مع الإعدادات في العينات، وجعل الفعل السيطرة تماما كما أردت.

وأنا خلقت العلامة التجارية الجديدة الإضافية تطبيق ويب VS2008، وتضمن الملف web.config، دلس، والمجلدات مع رمز نمط، وكذلك صفحة aspx التي كنت قد أنب أن تعطيني النتيجة المرجوة.

ولقد بنيت المشروع الجديد، وتجلى ذلك، والسيطرة تحميل، ويعمل بشكل جيد.


والآن أريد أن استخدام هذا في مشروع قائم بالفعل أن أكون قد تم العمل على، لذلك أنا نسخ القيم الملف web.config، ودلس، والمجلدات مع رمز نمط وصفحة aspx أنني أنب ..

وأنا وضعت لهم في نفس المواقع فعلت مع المشروع الآخر، الذي بني عليه وركض الصفحة .. كل شيء تحميل ولكن عندما ينقر على زر حصلت على خطأ webresource.axd، 2 في الواقع، على حد سواء مع التشفير في نهاية المطاف.

وبعد القيام ببعض البحوث، ويبدو أن webresource.axd يمكن استخدامها لتحميل جافا سكريبت و CSS الملفات ديناميكيا الخ ... سو تخميني في هذه المرحلة هو التحكم يستخدم هذا كوسيلة خفية لتضمين ملفات جافا سكريبت أنه يتطلب .. والفشل على تلك يشمل .. الذي يحير لي.

ولقد جردت من كل شيء من مشروعي، وانها لا تزال فشلها، وجدت مقالا ذكر أنه يمكن أن يكون تكوين IIS للموقع، لذلك راجعت، ولدي التعيين إلى ملف ليب الصافية 2.0، مع تمديد AXD .. لذلك أنا أشك في ان هذه هي القضية، ولكن أنا لم حذف وإعادة إنشاء موقع IIS .. وأنه لا يزال لا يعمل ...

ولقد شمل هذا الخط، وكذلك في التكوين على شبكة الإنترنت ..

<add verb="GET" path="WebResource.axd" type="System.Web.Handlers.AssemblyResourceLoader" validate="true"/>

وهذا أيضا لم يبدو للمساعدة ..

لا أحد يعرف أين يمكنني الذهاب مع هذا؟ ...

وتحرير: جئت عبر هذه في عارض الأحداث ..

Event code: 3005 
Event message: An unhandled exception has occurred. 
Event time: 05/05/2009 2:38:16 PM 
Event time (UTC): 05/05/2009 6:38:16 PM 
Event ID: 8579dbce2f5844169b1740bb95ebffb1 
Event sequence: 8 
Event occurrence: 1 
Event detail code: 0 

Application information: 
    Application domain: /LM/W3SVC/1/Root/SVN_WORKSPACE/WWWROOT/WorkEstimateSystem-12-128860222914549340 
    Trust level: Full 
    Application Virtual Path: /SVN_WORKSPACE/WWWROOT/WorkEstimateSystem 
    Application Path: c:\inetpub\wwwroot\SVN_WORKSPACE\WWWROOT\WorkEstimateSystem\ 
    Machine name: GREGE6500 

Process information: 
    Process ID: 2276 
    Process name: aspnet_wp.exe 
    Account name: GREGE6500\ASPNET 

Exception information: 
    Exception type: HttpException 
    Exception message: Session state is not available in this context. 

Request information: 
    Request URL: http://localhost/SVN_WORKSPACE/WWWROOT/WorkEstimateSystem/WebResource.axd?d=gPWI1Nyst2kh_ORsvV-AHCh4GSmizSjDuHRCpBgAKBsmi1Zr6e44K950Zcfsdc4p2GuNTPmRl4yAADV0USSNLFQQ7sk-iY1WVt4JJWJE_yg1&t=633771228432707325 
    Request path: /SVN_WORKSPACE/WWWROOT/WorkEstimateSystem/WebResource.axd 
    User host address: 127.0.0.1 
    User:  
    Is authenticated: False 
    Authentication Type:  
    Thread account name: GREGE6500\ASPNET 

Thread information: 
    Thread ID: 8 
    Thread account name: GREGE6500\ASPNET 
    Is impersonating: False 
    Stack trace:    at System.Web.HttpApplication.get_Session()
   at GlobalClass.CURRENT_EMPLOYEE_ID()
   at GlobalClass.checkLogin(String pagerequested)
   at GlobalClass.Application_OnPostRequestHandlerExecute(Object sender, EventArgs e)
   at System.Web.HttpApplication.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
   at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)


Custom event details: 

For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.

وعلى global.asax لديه بعض بداية الدورة وظائف نهاية وكذلك بدء تطبيق وظائف نهاية .. كان هناك أي طريقة لأقول ببساطة إذا طلب قادم من AXD نفعل شيئا مختلفا أو لا تعمل هذه الوظائف مخصصة؟

وثابتة:

وداخل الصفحة global.asax ..

    Sub Application_OnPostRequestHandlerExecute(ByVal sender As Object, ByVal e As EventArgs)
select case requestedPageName
   case "webResource.axd"
    exit sub

وهذا ثابت ذلك!

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

المحلول

ويعمل "Application_OnPostRequestHandlerExecute" طريقة لطلب أي وقت مضى أن مقابض .NET. وهذا يشمل "webresource.axd". في هذه الطريقة، تحقق لمعرفة ما إذا كان URL الحالي هو "webresource.axd". إذا كان كذلك، ثم لا تستخدم الدورة.

نصائح أخرى

وأنا باستخدام انتشار Farpoint التي تظهر صفحة واحدة فقط مع الكثير من الصفوف على ذلك. هنا هو ج # نسخة من ما حاولت أولا (لم يعمل):

Global.asax:
    protected void Application_OnPostRequestHandlerExecute(object sender, EventArgs e  )
    {
        String requestedPageName = VirtualPathUtility.GetFileName(Request.FilePath);
        switch (requestedPageName)
        {
            case "WebResource.axd":
                return;
        }
    }

والحل على هذا الرابط عملت بالنسبة لي ولكن اضطررت الى رفع عدد أكبر: HTTP: // شبكة الاتصالات العالمية. acumen-corp.com/Blog/tabid/298/EntryId/8/ASP-NET-Error-ThrowIfMaxHttpCollectionKeysExceeded.aspx

Web.Config:
   <appSettings>
        <add key="aspnet:MaxHttpCollectionKeys" value="5000" />
   </appSettings>

وهذه الوظيفة ذات الصلة تستخدم نفس الحل: "عملية غير صالحة بسبب الحالة الحالية للخطأ الكائن 'خلال إعادة النشر

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