Получите JSON с внешнего сервера, проанализируйте его и сохраните в локальной базе данных с помощью MVC2

#json #asp.net-mvc-2

#json #asp.net-mvc-2

Вопрос:

Мне нужно создать проект MVC2, который может получать JSON ({"Address":"Streetname","Age":42"}) , отправляемый с внешнего сервера, анализировать его и сохранять в моей локальной базе данных (возможно, с помощью модели?).

Поскольку я никогда раньше этого не делал, я не уверен, как с этим справиться. Мне понадобились бы некоторые указания о том, какой метод рекомендуется в данном случае (Linq to sql, Entity Framework, ADO.NET Entity Framework) и как получить строку JSON (ActionMethod или, может быть, в контроллере?) и сохранить ее локально (автоматически, при получении).

Ссылки на правильную документацию были бы очень признательны, поскольку у меня не так много времени, чтобы прочитать все руководства для начинающих.

Ответ №1:

Если вы действительно ищете что-то супер простое, это может быть так же просто, как это, если вы используете MVC 3, который имеет встроенную привязку модели JSON для параметров действия контроллера.

 public class ContactController : Controller
{
    [HttpPost]
    public void SaveContact(Contact contact)
    {
        var context = new MyDataContext();
        context.Contacts.InsertOnSubmit(contact);
        context.SubmitChanges();
    }
}
  

В этом примере я использую LinqToSql. Если вы не начнете использовать логику домена или более сложные объекты, это действительно все, что вам нужно.

Для MVC 2 вам необходимо загрузить библиотеку Futures и добавить ее при запуске вашего приложения.

 ValueProviderFactories.Factories.Add(new JsonValueProviderFactory());
  

Вы можете найти подробности здесь.