![](/img/trans.png)
[英]how do i get the first ID when user click on the first row in c# windowsform application
[英]How do I fix “The user Id(s) is invalid” when creating an application user?
我正在Dynamics 365中自動創建應用程序用戶 。確實創建了該用戶,但是當我稍后在代碼中嘗試為其分配角色時,我收到此消息: The user Id(s) [a guid here] is invalid.
當我嘗試從Dynamics Web UI分配用戶角色時,出現相同錯誤的變體: The user ID associated with the current record is not valid.
。
我在C#中使用CrmServiceClient連接到組織。
以編程方式創建用戶時,我提供以下字段:
firstname
lastname
businessunitid
applicationid
internalemailaddress
我注意到的一件事是,當我通過Web UI查看用戶時,我在創建中分配的應用ID不會顯示。
這是我當前的代碼:
private void SetUpPermissions()
{
var roleId = GetRoleId();
var userId = CreateApplicationUser();
CrmSvc.Associate(
"systemuser",
userId,
new Relationship("systemuserroles_association"),
new EntityReferenceCollection {
new EntityReference("role", roleId)
});
}
private Guid CreateApplicationUser() => CrmSvc.CreateNewRecord("systemuser", new Dictionary<string, CrmDataTypeWrapper>
{
{ "firstname", new CrmDataTypeWrapper(ProposalManagerApplicationName, CrmFieldType.String) },
{ "lastname", new CrmDataTypeWrapper("Application", CrmFieldType.String) },
{ "businessunitid", new CrmDataTypeWrapper(BusinessUnitId.Value, CrmFieldType.Lookup) },
{ "applicationid", new CrmDataTypeWrapper(ApplicationId, CrmFieldType.Key) },
{ "internalemailaddress", new CrmDataTypeWrapper("testcrm3@mydomain.com", CrmFieldType.String) }
});
我希望該用戶以與通過UI創建的應用程序用戶相同的方式出現在Web UI中,但事實並非如此。 它沒有顯示我在代碼中為其分配的應用程序ID,並且在嘗試為其分配角色時會拋出上述錯誤。
難道我做錯了什么? 如果答案是由現有文檔支持的,請也將其指向我,以便我了解為什么找不到它。
您的同事看起來正確。 通過嘗試將角色與正常創建的已經退出的用戶相關聯,我將對您的代碼進行故障排除。 如果可行,請使用FetchXml Builder或其他方法比較您創建的用戶和通過UI創建的用戶的潛在差異,然后嘗試解決這些問題,直到確定導致錯誤的原因。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.