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名称。检查重复项和不匹配项。 我有一个问题,一旦用户结婚,她的名字改变了。

+0

这是正确的,Active Directory中存在由管理员清理的错误数据。这个问题现在已经解决了。 – Kenn 2013-02-19 17:09:20