我刚刚启用了"并发模式"属性来修复我的一个实体.
当我尝试更新时,一切都很好.
但是当我尝试删除实体时,我总是得到这个错误:
DBUpdateConcurrencyException
存储更新,插入或删除语句会影响意外的行数(0).自实体加载后,实体可能已被修改或删除.刷新ObjectStateManager条目.
有没有办法为删除操作禁用DBUpdateConcurrencyException?如果没有,我该如何管理这种类型的例外?
[HttpPost]
public SaveResult SaveChanges(JObject saveBundle)
{
try
{
return _breezeComponent.SaveChanges(saveBundle);
}
catch (DbUpdateConcurrencyException ex)
{
//Workaround needed
}
}
Run Code Online (Sandbox Code Playgroud)
顺便说一句,我已经看过这些解决方案:如何在删除实体时忽略DbUpdateConcurrencyException.有什么办法可以将这个代码与Breeze引擎集成吗?
编辑: 我已从版本1.4.5升级到1.4.7,我仍然有同样的问题.
如果我查看JSON对象,将entityState从"Deleted"更改为"Detached"将是一个解决方案吗?Breeze中有任何设置可以帮助我做到这一点吗?
{
"entities": [
{
"EventId": 11111,
"EventName": "Jon Doe",
"EventCity": "Montreal",
"EventDate": "2014-01-24T00:00:00Z",
"TermDate": "2014-01-08T00:00:00Z",
"Insertedby": "Terry",
"InsertDate": "2014-01-06T14:31:14.197Z",
"Updatedby": "Terry",
"UpdateDate": "2014-01-07T15:50:53.037Z",
"entityAspect": {
"entityTypeName": "Event:#Cds.Corpo.GuestList.Models",
"defaultResourceName": "Events",
"entityState": "Deleted",
"originalValuesMap": {},
"autoGeneratedKey": {
"propertyName": "EventId",
"autoGeneratedKeyType": "Identity"
}
}
}
],
"saveOptions": {}
}
Run Code Online (Sandbox Code Playgroud) 我在 Azure 上部署了一个 Web 应用程序,并启用了 Azure Active Directory 安全性(快速设置)。因此,当我尝试访问该应用程序时,我需要成为 AD 的一部分才能访问。
我想向应用程序添加更多功能,例如显示当前登录的用户、实现注销、管理权限等...我相信我可以使用 Azure Graph API 实现所有这些功能。
然而,要做到这一点,我需要在本地测试一些东西。有没有办法在本地模拟Azure AD?它在 Azure 上“打开”,一切都运行良好,但在我的本地计算机上没有任何东西可以模拟它。