我的微风api控制器就像这样
public HttpResponseMessage CreateUser(class object)
{}
我有一个单独的工作单位来保存变更()由微风完成..
我需要将我的json传递给class object
而不是Jobject
这是我的微风savechanges()
var signupDetail = manager.getEntities(entityNames.userdetail);
var resourceDetail = new breeze.SaveOptions({
resourceName: "CreateUser"
});
return manager.saveChanges(signupDetail, resourseDetail)
它将json作为Jobject savebundle与“entities []和键映射[]”一起发送 由“breeze-debug.js”完成
但我需要它作为我的类对象的“字符串json”
有没有解决方案?
提前致谢
答案 0 :(得分:0)
你可以直接调用Context的SaveChanges方法,你的问题没有太多的细节,但我会冒险做出一些假设,并尝试回答它,因为今天我遇到了类似的问题。
public class MyContext : DbContext
{
// ...
}
public class MyRepository
{
private readonly EFContextProvider<MyContext> _contextProvider;
public MyRepository()
{
_contextProvider = new EFContextProvider<MyContext>();
}
public void SaveChanges()
{
// Save all changes made in this context to the underlying database
// this is the method you should call
_contextProvider.Context.SaveChanges();
}
public SaveResult SaveChanges(JObject saveBundle)
{
return _contextProvider.SaveChanges(saveBundle);
}
}
然后你可以在你的控制器中使用这样的东西:
[BreezeController]
public class TaskController : ApiController
{
private readonly MyRepository _repository;
public TaskController()
{
_repository = new MyRepository();
}
public void CreateUser(string className)
{
// Create the target object
// ...
// Call save changes
_repository.SaveChanges();
}
}
希望这有帮助。