Никита, я так понял ваш вопрос, что вы делаете запрос и вам ответ надо обработать. Давайте сначала, вы хотите типа api сделать и ваше приложение post запрос будет обрабатывать? Если так, то вам надо модель сделать, которая в запросе будет, соответствующая json, типа
public class Model
{
public string User { get; set;}
public string Text { get; set;}
}
И в параметрах контроллера именно это класс стоять должен, а не string. Asp все автоматом десериализирует в модель. Да и в запросе должен быть заголовок Content-Type: application/json.
LiptonOlolo, ну по мне читабельности не добавит, надо в уме еще и интерфейс держать, а вот названия свойств и методов даже очень, в вашем случае EditCommand и EndCommand читается и понимается на раз два. для привязки, смысла в реализации интерфейса (ну кроме INPC) VM нет, только если у вас какая то сложная навигация или несколько VM для одного View и в зависимости от условий, вы какую то из реализаций в контейнер добавляете.
Станислав Макаров, ну сейчас когда все на net core переводят, есть standalone дистрибуция, где не надо заботиться о наличии фреймворка, как дополнение.
using System;
public class Program {
int a=1;
int b=2;
int max;
public void Main1() {
if (a*b>0)
max = a*b;
}
public void Main2(){
int n = a*b;
if (n > 0)
max = n;
}
}
на уровне IL оптимизации нет, но если включить выход JIT, то код одинаковый. Почему с функцией нет оптимизации, могу сказать почему (мое предположение). Есть такое понятие, чистая функция, это функция которая, при одних и тех же параметрах возвращает одно и тоже значение, чистые функции это удел функциональных языков. Тут же jit не может выяснить, будет один и тот же результат и поэтому вызов будет дважды. Я так думаю компилятор C или C++ вполне могут оптимизировать, но они не на лету работают и могут себе это позволить.
Даже без просмотра il был уверен, что в первом случае 2 вызова будет, ибо il соответствует написанному полностью, оптимизация происходит на уровне jit. Да и как железо влиять то будет на код? Только если варианты на разном железе сравнивать. Даже больше скажу, даже RyuJIT не может это оптимизировать.
Борис Животное, могу сказать, вы предложение одно там упустили, конкретно в примере, написано про идентификатор сессий. А jwt увы придется хранить в ls
Борис Животное, ну во первых, если у вас приложение не подвержено xss атаке, то никто не украдёт у вас токен. Второе, для работы с webapi токен передается в http заголовках и из httpOnly кукиса тогон не выдерешь.
artshelom, у вас data base first или code first подход? Если первое и вы только начали проект, то переходите на второе. И проект у вас классический dotnet или core? И вы ef используете?
И в параметрах контроллера именно это класс стоять должен, а не string. Asp все автоматом десериализирует в модель. Да и в запросе должен быть заголовок Content-Type: application/json.