2012-10-18 72 views
0

我在虛擬機上運行MDS並嘗試從我的主機操作系統訪問服務。 我已經能夠添加一些東西到數據庫,但我的數據遍佈整個地方,並在主數據管理器(網站)我沒有看到新成員。 我想我不應該使用屬性,但別的什麼,但是什麼和如何?是否有教程,因爲我找不到任何...?如何向MDS中的成員添加額外的數據?

下面是我使用的代碼:

International international = new International(); 

EntityMembers entityMembers = new EntityMembers(); 

// Set the modelId, versionId, and entityId. 
entityMembers.ModelId = new Identifier { Name = modelName }; 
entityMembers.VersionId = new Identifier { Name = versionName }; 
entityMembers.EntityId = new Identifier { Name = entityName }; 
entityMembers.MemberType = memberType; 

Collection<Member> members = new Collection<Member>(); 
Member aNewMember = new Member(); 
aNewMember.MemberId = new MemberIdentifier() { Name = employee.FullName, Code = aNewCode, MemberType = memberType }; 

Collection<MDS.Attribute> attributes = new Collection<MDS.Attribute>(); 

MDS.Attribute attrOrgUnit = new MDS.Attribute(); 
attrOrgUnit.Identifier = new Identifier() { Name = "OrganizationalUnit" }; 
attrOrgUnit.Value = employee.OrganizationalUnit; 
attrOrgUnit.Type = AttributeValueType.String; 
attributes.Add(attrOrgUnit); 

aNewMember.Attributes = attributes.ToArray(); 
members.Add(aNewMember); 
entityMembers.Members = members.ToArray(); 

// Create a new entity member 
OperationResult operationResult = new OperationResult(); 
clientProxy.EntityMembersCreate(international, entityMembers, false, out operationResult); 
HandleOperationErrors(operationResult); 

回答

2

我已經能夠解決我自己的問題。首先:創建具有集合的單獨變量並將它們轉換爲數組並不是必需的。這些教程中的代碼很有用,但沒有提到,在添加服務引用時,必須對其進行配置(右鍵單擊服務引用 - >配置)以將集合用作「集合類型」而不是陣列,並生成消息合同。

其次,以上帶有屬性的代碼是正確的,並且完美地工作。我沒有添加屬性的消息的問題是不相關的。這是我的主機操作系統和客戶操作系統之間的連接/身份驗證問題。

希望這可以幫助別人。

相關問題