Доступ к двум таблицам одновременно в .net - PullRequest
0 голосов
/ 19 ноября 2018
SELECT TOP 1000 
    [ID]
    ,[Name]
    ,[Phone]
    ,[Email]
    ,[AID]
    ,[Password]
    ,[Date/time]
    ,[IsVerify]
    ,[ProfilePicture]
FROM 
    [ChefODine].[dbo].[User]

Это моя таблица пользователей. AID - это внешний ключ таблицы адресов, имеющий следующие поля.

SELECT TOP 1000 
    [ID]
    ,[Location]
    ,[LAT]
    ,[Lng]
FROM 
    [ChefODine].[dbo].[Address]

Я хочу добавить адрес пользователя и другую информацию в базу данных через веб-сервис.Я хочу, чтобы каждый раз, когда пользователь добавил свою информацию, адрес сохранялся в таблице адресов, а AID сохранялся в таблице пользователей.Это мой код Пожалуйста, наведите меня, я новичок в этом.

[HttpPost]
public User Register([FromBody]User user)
{
    if (db.Users.Any(x => x.Email == user.Email))
        throw new Exception("Username \"" + user.Email + "\" is already taken");

    db.Users.Add(user);
    db.SaveChanges();

    return user;
}

1 Ответ

0 голосов
/ 20 ноября 2018

Вы должны указать значение перед попаданием в SaveChanges что-то вроде:

[HttpPost]
public User Register([FromBody]User user)
{
    if (db.Users.Any(x => x.Email == user.Email))
        throw new Exception("Username \"" + user.Email + "\" is already taken");
    user.Email  = "this is the Email from anywhere";
    user.AID = "This is your Aid Value";
    db.Users.Add(user);
    db.SaveChanges();

     //If you want to save Address
   AddressEntity adr = new AddressEntity()
    adr.address = "This is your new address";
    db.Address.Add(adr);
    db.SaveChanges();


    return user;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...