ユーザーが新しいレコードを追加している間に重複レコードをチェックするために、最初の LINQ クエリを実装しましたが、起動されていません
私はCRM2011に取り組んでおり、LINQを使用してプラグインを作成し、プラグイン登録ツールに登録しました
以下は私のコードです
if (context.Depth == 1)
{
if (context.InputParameters.Contains("Target") &&
context.InputParameters["Target"] is Entity)
{
target =(Entity)context.InputParameters["Target"];
if (target != null)
{
householdname = target.GetAttributeValue<string>("mcg_HouseholdName");
}
}
OrganizationServiceContext orgcontext = new OrganizationServiceContext(service);
{
var query = (from c in orgcontext.CreateQuery<mcg_household>()
where c.mcg_HouseholdName == householdname
select c
);
List<mcg_household> householdlist = query.ToList<mcg_household>();
if (householdlist.Count > 0)
{
throw new InvalidPluginExecutionException("Record Already Exists!");
}
}
}
ハードコードされた値でチェックすると実行されるため、問題は getattribute にあると思います。このプラグインをどの段階で登録する必要があるか、コードに問題があるかどうか教えてください。