如何使用 SDK 从 Dynamics CRM 2011 中仅激活 select 个帐户?

How to only select Active Accounts from Dynamics CRM 2011 using SDK?

我正在使用此 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#?

问题是,这让我获得了所有帐户,包括活动帐户和停用帐户。有什么方法可以区分这两者吗?

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

每个帐户都有一个状态代码字段。只需提取它并稍后检查其值。

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

还有其他方法吗?

试试这样的东西:

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