Обратите внимание, что IResource
- это интерфейс службы , а не объект . Так что IResource не новый объект. Если вам нужен новый объект, вы можете использовать заводской подход:
var resource = _resource.Create();
Чтобы добавить объект в контекст:
[HttpPost("{resourceName}")]
public async Task<IActionResult> Post([FromRoute]string resourceName, [FromBody]JObject Request)
{
var resource = new Data.Entities.Resource
{
Name = resourceName,
Location = (string)Request["location"]
};
_context.Resources.Add(resource);
_context.SaveChangesAsync();
return CreatedAtRoute("Get", new { id = resource.Id }, resource.Id);
}
Где результат ссылки на созданный объект.
Я заметил, что вы включили Id для этого запроса. Но создается впечатление, что создан новый ресурс, поэтому я пропустил Id, потому что он, вероятно, установлен в базе данных.