MVC4、EF5、および MySQL を使用しています。ユーザーがビューからコントローラーへのリンクをクリックしたときに、テーブル A に入力したいテンプレートがあります。
表 A テンプレート ( 3 レコード)
Title
Body
CountryId
テーブル A (別のユーザーに属する他のレコードが存在する可能性があります)
Title
Body
CountryId
UserId
したがって、現在ログインしているユーザーの UserId を追加して、他のユーザー レコードと区別するテンプレートとして機能する 3 つのレコードの新しいセットを追加したいと考えています。コントローラーでこれを実現する方法がわかりません。お手数ですが、よろしくお願いいたします。
私は何かを考え出しましたが、これが最も効率的なアプローチであるかどうかはわかりませんか?
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult GetATemplate(int CountryId)
{
var userId = MySqlWebSecurity.GetUserId(User.Identity.Name);
var temps = db.ATemplates.ToList();
foreach (var temp in temps)
{
db.ATables.Add(new ATable()
{ Title = temp.Title,
CountryId=CountryId,
UserId= userId,
Body = temp.Body,
DatePosted = DateTime.Now
});
}
db.SaveChanges();
return View();
}