Azman выдает ту же ошибку, используя локальный XML или SQL Server для хранения
Недавно два пользователя в нашей системе начали получать эту ошибку при попытке добавить их в роль.
System.Runtime.InteropServices.COMException: невозможно создать файл, если этот файл уже существует. (Исключение из HRESULT: 0x800700B7)
Интересно то, что одна и та же ошибка возникает независимо от конфигурации, при локальном запуске мы используем хранилище XML, а в тестовой среде - SQL Server.
Вот код, где взрывается - 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);
}
Я пытался погуглить разные термины, но ничего не могу найти по этому поводу. Я прочитал этот пост, но это не проблема.
Спасибо
1 ответ
Проверьте ваши имена пользователей Active Directory и, в частности, имя OU. Проверьте на дубликаты и несоответствия. Однажды у меня возникла проблема, когда пользователь женился, и его имя изменилось.