Here is my service:
var news = new News()
{
Views = request.Views,
Title = request.Title,
Status = request.Status,
Content = request.Content,
CreatedDate = request.CreatedDate,
UpdatedDate = request.UpdatedDate,
CreatedBy = request.CreatedBy,
UpdatedBy = request.UpdatedBy
};
_freedomContext.News.Add(news);
var image = new Image()
{
IdObj = request.IdObj,
Url = request.Url,
Thumbnail = request.Thumbnail,
Type = "news"
};
_freedomContext.Images.Add(image);
return await _freedomContext.SaveChangesAsync();
How to set IdObj is id of news when me create new record in News table?
Example: When me create news with id = 10, that parallel, IdObj of image =10.
>Solution :
You have to do following changes in your code:
var news = new News()
{
Views = request.Views,
Title = request.Title,
Status = request.Status,
Content = request.Content,
CreatedDate = request.CreatedDate,
UpdatedDate = request.UpdatedDate,
CreatedBy = request.CreatedBy,
UpdatedBy = request.UpdatedBy
};
_freedomContext.News.Add(news);
//add below line so you can get news last saved id and you can use that id to save into image table.
await _freedomContext.SaveChangesAsync();
var image = new Image()
{
IdObj = news.Id, //Changes
Url = request.Url,
Thumbnail = request.Thumbnail,
Type = "news"
};
_freedomContext.Images.Add(image);
return await _freedomContext.SaveChangesAsync();