如何仅使用SDK从Dynamics CRM 2011中选择活动帐户?

时间:2016-03-18 11:31:14

标签: c# dynamics-crm-2011 dynamics-crm

我正在使用此C#SDK从Dynamics CRM 2011获取数据:https://msdn.microsoft.com/en-us/library/gg695803(v=crm.5).aspx

我需要从中读取所有帐户,问题是,有许多帐户已停用。

要获取帐户,我使用以下代码:

var accounts = xrm.AccountSet
                .Select(acc => new
                {
                    name = acc.Name,
                    guid = acc.AccountId,
                    parent = acc.ParentAccountId,
                    number = acc.AccountNumber,
                    website = acc.WebSiteURL,
                });

此问题已在此问题中提出:Retrieve list of all accounts in CRM through C#?

问题是,这会让我获得所有帐户,包括活动帐户和停用帐户。有没有办法区分这两个?

2 个答案:

答案 0 :(得分:4)

尝试类似:

var accounts = xrm.AccountSet.Where(acc => acc.StatusCode.Value == 0)
                .Select(acc => new
                {
                    name = acc.Name,
                    guid = acc.AccountId,
                    parent = acc.ParentAccountId,
                    number = acc.AccountNumber,
                    website = acc.WebSiteURL,

                    status = acc.StatusCode
                });

答案 1 :(得分:0)

对于任何想知道的人,我找到了解决方案。

每个帐户都有一个StatusCode字段。只需提取它并稍后检查它的值。

var accounts = xrm.AccountSet
                .Select(acc => new
                {
                    name = acc.Name,
                    guid = acc.AccountId,
                    parent = acc.ParentAccountId,
                    number = acc.AccountNumber,
                    website = acc.WebSiteURL,

                    status = acc.StatusCode
                });

还有其他办法吗?