2012-02-13 2 views
0

У меня есть следующий код, но я не могу решить, что мне нужно вместо // до .AddObject(Model); и .SaveChanges();, чтобы заставить этот метод работать. Это запрос создания, но я только когда-либо делал это при использовании Entity Framework до сих пор, в этом случае я не использую EF.Создать запрос без рамки сущности

[HttpPost] 
public ActionResult Registration(UserDetailModel Model) 
{ 
    if (ModelState.IsValid) 
    { 
     Model.UserNameFK = User.Identity.Name; 
     Model.CompanyName = "CompanyName"; 
     Model.IEMI = "IEMI"; 

     //.AddObject(Model); 
     //.SaveChanges(); 

     return RedirectToAction("Registration", "Home"); 
    } 

    return View(Model); 
} 

Я близко?

Cheers,

Mike.

ответ

0

Надеюсь, вы знаете, что Entity Framework является фреймворком Object Relational Mapping для .NET.

В основном он создает классы сущностей, которые сопоставляются с вашей базой данных и упрощают выполнение операций Create/Read/Update/Delete без написания SQL.

Если вы не используете Entity Framework, вы можете использовать другой ORM, например NHinbernate.

ИЛИ

Вы можете использовать простые классы ADO.NET с SQL для записи/чтения данных в/из базы данных.

Ex: Если вы используете SQL Server вы бы использовать пространство имен System.Data.SqlClient для записи вашей БД SQL, see the SQLCommand class (запись в другую поддерживаемой работе децибел таким же образом)

Вы бы сделать что-то вроде этого с помощью функции под ним:

CreateCommand(//just as an example you can use values from your model in sql 
"INSERT INTO Users(Name, CompnayName, IMEI,) VALUES (" 
     + Model.UserNameFK +", val2, val3,...)", 
"your connection string" 
); 

private static void CreateCommand(string queryString, 
    string connectionString) 
{ 
    using (SqlConnection connection = new SqlConnection(
       connectionString)) 
    { 
     SqlCommand command = new SqlCommand(queryString, connection); 
     command.Connection.Open(); 
     command.ExecuteNonQuery(); 
    } 
} 

See this for more documentation.

+0

Я использовал Framework Entity много, много раз! Это медленно, я пытаюсь сделать это без него. Я пытаюсь использовать то, что было создано для меня, расширив AccountModel, но чем больше я узнаю, тем больше я вижу, что построенный для вас AccountModel бесполезен. Все, что я хочу, это способ для входа в систему и для меня отслеживать их. –

+0

Или вы имеете в виду 'UserDetailModel'? Во всяком случае, любая модель, которую он может использовать для получения ваших значений из формы в ваш контроллер оттуда, может делать все, что от вас требуется. Как я описал в своем ответе, вы можете вручную запускать SQL против своей базы данных, а не использовать сущность framework. Я обновил свой ответ. – gideon

Смежные вопросы