0

仮想マシンで MDS を実行していて、ホスト OS からサービスにアクセスしようとしています。データベースに何かを追加できましたが、データがあちこちにあり、マスター データ マネージャー (Web サイト) に新しいメンバーが表示されません。属性を使用するべきではないと思いますが、何か他のものを使用する必要がありますが、何をどのように使用するのでしょうか? 見つからないのでチュートリアルはありますか...?

私が使用しているコードは次のとおりです。

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);
4

1 に答える 1

2

私は自分の問題を解決することができました。

まず第一に、コレクションを使用して個別の変数を作成し、後でそれらを配列に変換する必要はありません。チュートリアルのコードは機能しますが、サービス参照を追加するときに、コレクションを配列ではなく「コレクションタイプ」として使用し、メッセージを生成するように構成する必要があることを説明していません(サービス参照を右クリック->構成)。契約。

次に、上記の属性を持つコードは正しく、完全に機能します。属性付きのメッセージを追加できなかった私が抱えていた問題は無関係でした。ホストOSとゲストOS間の接続/認証の問題でした。

これが誰かを助けることを願っています。

于 2012-10-22T07:31:10.043 に答える