Azman在使用本地xml或SQL Server存储时出现相同的错误
问题描述:
最近,我们系统中的两个用户在尝试将它们添加到角色时开始出现此错误。Azman在使用本地xml或SQL Server存储时出现相同的错误
System.Runtime.InteropServices.COMException:当该文件已存在时,无法创建文件。 (异常来自HRESULT:0x800700B7)
有趣的是,无论在配置发生了同样的错误,在本地运行,我们使用XML存储和在测试环境中,它使用SQL服务器。
这里是代码,其中是炸毁 - AddMemberName()
- 你可以看到这是非常简单的东西,它的工作好了一段时间,只是这两个用户都突然
public void AddUserToRole(string roleName, string userName, bool upn)
{
string uName = userName;
if (upn)
uName = getAltUserNames(userName).First();
AzAuthorizationStore store = new AzAuthorizationStoreClass();
store.Initialize(2, _provider.StoreLocation, null);
IAzApplication app = store.OpenApplication(_provider.ApplicationName, null);
IAzRole role = app.OpenRole(roleName, null);
role.AddMemberName(uName, null);
role.Submit(0, null);
Marshal.FinalReleaseComObject(role);
}
我试着用搜索引擎各种不同的术语,但无法找到关于此的任何东西。我的确看过this post,但似乎并不是问题所在。
谢谢
答
特别检查你的Active Directory用户名和底层OU名称。检查重复项和不匹配项。 我有一个问题,一旦用户结婚,她的名字改变了。
这是正确的,Active Directory中存在由管理员清理的错误数据。这个问题现在已经解决了。 – Kenn 2013-02-19 17:09:20