Записи с меткой «.net»

Запускаем asp.net-mvc приложения в vs в разных средах

В mvc приложении есть файл Web.config который отвечает за главные настройки приложения. И есть файлы Web.Debug.config и Web.Release.config, которые переопределяют или добавляют некоторые настройки в файл Web.config. Проблема в том что данные файлы предназначены для запуска развернутого приложения и при разработке они не несут никакого смысла. И так давайте это исправим. Для начала объясню как …

Выполняем get запрос по расписанию c#

Напишем простенькую программу, которая будет выполнять get запрос по истечению определенного интервала времени. class Program { private static Timer _timer; public static void Main() { _timer = new Timer(); _timer.AutoReset = true; // вызываем событие каждый раз по истечении указанного интервала времени _timer.Interval = 300000; _timer.Elapsed += new ElapsedEventHandler(OnTimedEvent); _timer.Start(); Console.WriteLine(«Press the Enter key to …

Выполняем действие по расписанию (asp.net, c#)

Раньше я писал программку, которая выполняла get запрос по расписанию, но так же можно написать обычный HttpModule, который будет делать тоже самое. public class MyHttpModule : IHttpModule { private int _hour = 2; private int _minute = 0; private Timer _timer; private bool _excecuted = false; private static object _lockThis; public void Init(HttpApplication app) { …

Выбираем технологии и инструменты для разработки веб приложений

1 Выбор и настройка инструментов для разработки фронтенда (только самые важные): 1.1 Twitter bootstrap — фреймворк позволяет писать качественную верстку и делать адаптивный дизайн. Сайт можно будет смотреть на разных устройствах. 1.2 requirejs — служит для написания js модулей по принципу amd и для асинхронной загрузки скриптов 1.3 globaljs — позволяет делать локализацию на клиенте. …

Делаем водяной знак на картинке (c#, .net)

Нанесем несколько раз картинку watermark на другую картинку. public void DrawWatermark(string watermarkImagePath, System.Drawing.Image image) { using (System.Drawing.Image watermarkImage = System.Drawing.Image.FromFile(watermarkImagePath)) using (Graphics imageGraphics = Graphics.FromImage(image)) using (TextureBrush watermarkBrush = new TextureBrush(watermarkImage)) { if (image.Width < watermarkImage.Width || image.Height < watermarkImage.Height) return; int x = 0, y = 0; while (y < image.Height) { while (x …

Увеличим размер загружаемого файла (asp.net mvc)

Добавим такие строчки в web.config: <system.web> <httpRuntime targetFramework=»4.5″ maxRequestLength=»50000″ /> </system.web> …… <system.webServer> <security> <requestFiltering> <requestLimits maxAllowedContentLength=»50000000″ /> </requestFiltering> </security> </system.webServer>

Устанавливаем и настраиваем Ninject

Ninject это IoC контейнер для .NET платформы. Установим его и настроим. Установим ninject с помощью менеджера nuget Создадим класс который создает контейнер и разрешает зависимости всех объектов using System; using System.Collections.Generic; using System.Web.Mvc; using Ninject; using Ninject.Parameters; using Ninject.Syntax; using System.Configuration; namespace WebApp.Infrastructure { public class NinjectDependencyResolver : IDependencyResolver { private IKernel kernel; public NinjectDependencyResolver() { …

Транслитерация на C#

При создании ссылок необходимо транслитерировать русские символы в латинские. Я использую класс позаимствованный по ссылке http://usanov.net/748-transliteraciya-rus-2-lat-na-c, немного переписав его в using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Text; using System.Text.RegularExpressions; namespace WebApp.Infrastructure { public enum TransliterationType { Gost, ISO } public static class Transliteration { private static Dictionary<string, string> gost = new Dictionary<string, string>(); …

Список перечислений в entity framework

Entity Framework может хранить  перечисления в бд как int. А список перечислений ef уже не умеет хранить, но позволяет создавать сложные типы. Создадим сложный тип, который бы хранил список перечислений в поле int. Создадим абстрактный класс public abstract class Enums<T> : ICollection<T> { public Enums() { List = new List<T>(); } protected List<T> List { get; …

Создаем класс для хранения данных для рабочего потока (Thred Local Storage)

Иногда есть данные которые хочется сохранить для текущего рабочего потока и многие сохраняют их в HttpContext.Current.Items.  Но такой способ привязывает все приложение к asp.net mvc. Создадим класс TLS(Thread Local Storage), чтобы по возможности можно было использовать ThreadStatic или CallContext, в зависимости от режима TlsMode. public enum TlsMode { HttpContext, ThreadStatic, CallContext } public class TLS : ITLS …