نظرات اشتراک‌ها
مسابقه طراحی نرم افزار آموزشی
حتی ایران...
اینا توی آمریکا هستند، اگر برنده بشید به راحتی آب خوردن چیزی بهتون نمیدن و ایده شما رو هم صاحب میشن. هیچ ضمانت قانونی وجود نداره که شما بتونید این پولو بگیرید.

مسخره‌تر از این نمیشه ایده داد، جایی که مردم مشکل بهداشت و تغذیه دارند، مشکل غارت شدن توسط همین‌ها رو دارن، مشکل کشته شدن در جنگ‌های داخلی و قبیله ای دارند،  کسی خرج کامپیوتر نمیکنه که بعد بخواد نرم افزاری به این شکل روش نصب بشه. یه معلم ساده با چند تا کاغذ و مداد میتونه مشکل رو حل کنه.
http://learning.xprize.org/
بازخوردهای دوره
صفحات مودال در بوت استرپ 3
باتشکر. فرم مودال من  بصورت لوکال نمایش داده میشه ولی زمانی که کد رو  پابلش می‌کنم و روی سرور قرار میدم مودال نمایش داده نمیشه ، کنسول مرورگر رو هم برای بررسی خطا چک کردم ولی خطایی صادر نشده . در نتیجه متوجه منشاء اشکال نمی‌شوم.
کد من :
 grid.Column(columnName: "Description", header: "شرح",
                format:
                    item => @Html.Raw(
                        $"<a data-toggle='modal' class='fa fa-id-card-o' href={@renderModalPartialViewUrl+'/'+item.Id} data-target='#myModal'></a>")),
سایر جزئیات مودال هم طبق مثال انتهای مطلب نوشته شده  و نتیجه دلخواه رو بصورت لوکال میگیرم.اگر امکانش هست راهنمائی بفرمائید.
بازخوردهای پروژه‌ها
سوال در مورد هدر
سلام
با آرزوی سلامتی و شادی برای شما
سوال اولم اینه که آیا امکان استفاده از قرار دادن شماره صفحه و تعداد صفحات در هدر گزارش وجود داره
سوال دوم اینکه تو گزارشات قسمت هدر تاریخ بر عکس نمایش داده میشه بجا 1392/01/01
01/01/1392 نمایش داده میشه چطوری میشه این مشکل رو رفع کرد
و سوال آخر اینکه راهی برای قرار دادن متن‌ها بصورت پکسلی یا بصورتی که با اختلاف ار لبه کاغذ یا جدول در هدر وجود داره چون با وجود گرید بندی یا جدول سازی دقیقا جایی که میخوام قرار نمیگیره جملات
میخواستم بدونم میشه مشخص کرد دقیقا بصورت x , y یا حالت دیگه آدرس داد
متشکرم از شما و وقتی که میگذارید
نظرات مطالب
تغییر عملکرد و یا ردیابی توابع ویندوز با استفاده از Hookهای دات نتی
الان توی صفحه زیر
http://www.codeproject.com/Articles/27637/EasyHook-The-reinvention-of-Windows-API-hooking
بالای خط
 a deep look under a hook
نوشته برای رهگیری اکسپلورر اونو در کامنت صدا بزنید. گفته میاد با صدازدن تابع "createfileW" توابع و پارامترای فایل اجرایی مورد نظر رو رهگیری میکنه
نظرات مطالب
ASP.NET MVC #5
یک مشکل کوچک در Razor برام لاینحل مونده ممنون میشم راهنماییم کنین اونم عدم وجود Desing mode برای مثلا مستر پیج یا صفحات دیگرمون هست یعنی الان کاملا ذهنی صفحات رو طراحی میکنم و از اونجایی که موتور Razor خیلی ساده‌تر از Aspx هست نمیخوام بذارمش کنار. برای این مساله یه راه ساده‌تری وجود نداره که دیزاین طراحی پیجامون رو هم داشته باشیم؟
نظرات مطالب
بازنویسی سطح دوم کش برای Entity framework 6
تمام مراحل کش سطح دوم رو انجام دادم . چندبار تست گرفتم کار می‌کرد یعنی مقادیر دیتابیس رو بصورت دستی تغییر میدادم ولی در صفحات سایت من همان داده‌های قبلی را نشان می‌داد. الان دیگه کار نمی‌کنه ( احتمال می‌دهم بعد از ویرایش یک رکورد در برنامه )
نظرات مطالب
جلوگیری از ارسال Spam در ASP.NET MVC
به نکته بسیار خوبی اشاره کردین ولی بهتره به جای چک کردن ModelState یک خصوصیت به جدید به ActionFilter خودمون اضافه کنیم و بعد در صورتیکه نتیجه عملیات موفقیت آمیز بود اون رو True کنیم در نهایت در خود ActionFilter پس از اجرای اکشن چک میکنیم اگر این خصوصیت false بود یعنی چیزی ثبت نشده و کلید رو از کش حذف می‌کنیم و کاربر میتونه باز فرم رو ارسال کنه و تنها زمانی محدود میشه که واقعا چیزی ثبت شده باشه.
در کل روند رو می‌تونیم در دست خودمون بگیرم و هروقت که بخواهیم بگیم که محدودیت اعمال بشه یا خیر.
با توجه به نکاتی که در کامنت‌ها ذکر شد در مکانیزم تغییراتی داده شد و به پست اصلی ضمیمه کردم.
نظرات مطالب
ارتقاء به ASP.NET Core 1.0 - قسمت 15 - بررسی تغییرات Caching
فیلتر Authorize هم در ASP.NET Core هدرهای مربوط به کش کردن را بازنویسی و تنظیم می‌کند. به عبارتی صفحه‌ای که از این فیلتر رد شود، فقط دارای "CacheControl = "no-cache خواهد بود (تا به اشتباه اینگونه صفحات دارای سطح دسترسی، کش نشوند؛ موردی که در نگارش قبلی ASP.NET MVC به صورت توکار بررسی نمی‌شد).
اشتراک‌ها
استفاده از کش توزیع شده در Viewهای برنامه‌های ASP.NET Core

روش‌های استفاده از کش در View در Asp.net core  تغییرات و بهبودهای اساسی داشته است. یکی از امکاناتی که به Tag Helper‌های مرتبط به کش افزوده شده است امکان استفاده از کش توزیع شده(Distributed-Cache) است.

با تنظیمات و سازوکارهای خود Asp.net core میتوان کش را از Sql Server  و Redis استفاده کرد و بخش‌های مختلف صفحه را در این کش‌های توزیع شده ذخیره و بازیابی کرد.

استفاده از کش توزیع شده در Viewهای برنامه‌های ASP.NET Core
نظرات مطالب
از سرگیری مجدد، لغو درخواست و سعی مجدد دریافت فایل‌های حجیم توسط HttpClient
سلام؛ اگر قصد داشته باشیم از طریق Angular 2  دانلود رو فراخوانی کنیم ، به شکلی که یک فایل حجیم بر روی مرورگر کاربر دانلود بشه ، پیاده سازی به چه صورت خواهد بود ، الان شما در سمت سرور یک حلقه while دارید که محتوی رو می‌خونه ، این یعنی در هر اجرای حلقه من باید محتوی خوانده شده رو return کنم به کلاینت و دوباره با آفست جدید فراخوانی کنم؟
نحوه فراخوانی من به شکل زیر هست که با FileStreamResult برگشتی از سمت سرور به درستی کار میکنه ولی خب همه فایل رو یکجا برمی گردونه :
 downloadOrder(orderId: number , userId : string) {

    this._http.get(this._config.getApiURI() + '/Download/productfile/' + orderId + '/' + userId, { observe: 'blob'})
      .subscribe(
        (data) => {
          if(this._functionService.isNullOrEmpty(data.body)){
            this._snackBarService.error('فایل پیدا نشد');
            return;
          }
          var contentType = data.body.type || "application/octet-stream";

          var fileInfo = JSON.parse(data.headers.get('FileInfo'));          
          var blob = new Blob([data.body], { type: contentType });
          var url = window.URL.createObjectURL(blob);
          var anchor = document.createElement("a");
          anchor.setAttribute("href", url)
          anchor.setAttribute("download", fileInfo.fileName + fileInfo.fileType);
          anchor.setAttribute("target", "_blank");
          document.body.appendChild(anchor);
          anchor.click();
          setTimeout(function () {
            document.body.removeChild(anchor);
            window.URL.revokeObjectURL(url);
          }, 200);
        },
        error => {
          this._snackBarService.error(error);
        });
  }
ولی حالا که قراره فایل رو در چندین مرحله و با حلقه while برگردونیم ، با این سناریو یعنی باید از طرف کلاینت چندین بار فراخوانی باشه ، مگر اینکه کلا یک window جدید باز کنیم  (که احتمالا با مشکل popup blocker مواجه میشیم) و ... آیا باید در سمت سرور بایت‌های خوانده شده رو تو Response بنویسیم ...
نحوه پیاده سازی کد پایین به چه شکل میشه
             while ((bytesRead = await stream.ReadAsync(buffer, 0, buffer.Length)) > 0)  
                    {                        
                        await Response.Body.WriteAsync(buffer);                        
                        //return File(buffer, GetContentType(fullPath), newFileName, true);                        
                        //return new FileStreamResult(stream,"application/octet-stream");
                    }