آقای نصیری ، پیرو این
بازخورد ، از شما تشکر میکنم که پاسخ دادید و مشخص شد مشکل از کدهای من بوده و درخواستها واقعا ارسال میشه. ولی مشکل من هنوز پابرجاست. چون ربطی به بازخورد قبلی نداره این "نظر ارسالی" من ، برای همین مشکلم رو در اینجا دوباره بیان میکنم.
من کدهای این مطلب رو در برنامه قرار دادم ولی مشکل هنوز پا برجاست. در قسمت سابقه متدها چک کردم و متوجه شدم از کلاس CustomSecurityStampValidator درخواستها ارسال میشن :
همونطور که مشاهده میکنید درخواستها درست است در Application_AuthenticateRequest رد میشن ولی در اینجا نیز فراخوانی میشن و یا به عبارتی یک کوئری برای هر فایل استایک روی بانک اجرا میشه.
واقعیت امر اینه اصلا نمیدونم چرا این اتفاق رخ میده ولی یک متد با کدهای شما در کلاس CustomSecurityStampValidator قرار دادم و فراخوانی کردم اون رو و مشکل حل شد و دیگه درخواستی ارسال نمیشه و همهی درخواستهای فایلهای مورد نظر رد میشن. به این نحو :
private static bool ShouldIgnoreRequest(CookieValidateIdentityContext context)
{
string[] reservedPath =
{
"/__browserLink",
"/img",
"/fonts",
"/Scripts",
"/Content",
"/Uploads",
"/Images"
};
return reservedPath.Any(
path => context.OwinContext.Request.Path.Value.StartsWith(path, StringComparison.OrdinalIgnoreCase)) ||
BundleTable.Bundles.Select(bundle => bundle.Path.TrimStart('~'))
.Any(
bundlePath =>
context.OwinContext.Request.Path.Value.StartsWith(bundlePath,
StringComparison.OrdinalIgnoreCase));
}
و برای فراخوانی :
//...
if (ShouldIgnoreRequest(context)) return;
var manager = context.OwinContext.GetUserManager<ApplicationUserManager>();
var userId = getUserIdCallback(context.Identity);
//...
لطفا اگر اطلاع دارید که چرا این اتفاق ممکنه رخ میده راهنمایی کنید. چرا در اونجا رد میشن ولی باز در این کلاس فراخوانی میشن.