Ответы пользователя по тегу ASP.NET
  • Как выбрать оптимальное зеркало для WebService?

    dzedzinskiy
    @dzedzinskiy
    Full stack developer
    Можно написать функцию на javascript'e используя таймер и загрузку небольшого количества информации с каждого сервера, или не с каждого, в зависимости от результатов. На основе этих данных - выбрать тот что меньше времени занял, потом подставлять соответствующую url.

    Результат можно сохранить в базе данных на сервере, если пользователи регаются, иначе в localstorage
    Ответ написан
  • Как написать метод загрузки файла на сервер с помощью ASP.NET WebAPI?

    dzedzinskiy
    @dzedzinskiy
    Full stack developer
    [HttpPost()]
    public async Task<HttpResponseMessage> Post()
    {
        if (!Request.Content.IsMimeMultipartContent())
        {
            throw new HttpResponseException(HttpStatusCode.UnsupportedMediaType);
        }
        var streamProvider = new MultipartFormDataStreamProvider(@"C:\Uploads");
        List<string> files = new List<string>();
        try
        {
          // Read the MIME multipart content using the stream provider we just created.
           await Request.Content.ReadAsMultipartAsync(streamProvider);
            //await Request.Content.ReadAsMultipartAsync();
    
            foreach (MultipartFileData file in streamProvider.FileData)
            {
               files.Add(file.LocalFileName);
            }
    
            // Send OK Response along with saved file names to the client. 
            return Request.CreateResponse(HttpStatusCode.OK, files);
         }
          catch (Exception e)
         {
           return Request.CreateErrorResponse(HttpStatusCode.InternalServerError, e);
        }
    }
    Ответ написан
    Комментировать
  • ASP MVC и Ninject или другой ioc. Как правильно использовать, организовать структуру?

    dzedzinskiy
    @dzedzinskiy
    Full stack developer
    Ninject полезен в больших проектах, где присутствует сильная связанность к конкретной реализации. Т.е. если в какое то время вам нужно будет заменить какой то класс то вам не придется править зависимой код (а таких мест может быть много), модули связаны с интерфейсами которые вы связываете с конкретными реализациями в DependencyResolver'е.

    Если нужно поменять реализацию какого то класса, вам нужно будет поменять связь интерфейса с конечной реализацией класса в одном месте DependencyResolver'а.

    В результате в вашем коде не должно остаться записей создания объектов, только их интерфейсы.

    А на счет подключения/удаления сборок - это уже другая тема. Суть использования ninject к этому не относиться.
    Ответ написан
    Комментировать
  • Что выбрать в качестве серверного приложения, ASP.Net или WCF?

    dzedzinskiy
    @dzedzinskiy
    Full stack developer
    WCF поддерживает также TCP, UDP, MSMQ и возможность написания своего протокола, что не мало важно. Если есть опыт в Asp.Net Mvc , то Web-api будет намного привычнее чем WCF, ибо структура приложения та же сама. Лично мое мнение - сервис по работе с текстовыми данными - делать на web-api, а сервис по работе с файлами (если нужно вообще (загрузка/отправка)) делать на WCF. Передача файлов по TCP немного быстрее чем по HTTP. + в web-api нет транзакций как в WCF.
    Ответ написан
    Комментировать