要获取包括空值的FetchXML链接实体,可以使用以下代码示例:
using System;
using Microsoft.Xrm.Sdk;
using Microsoft.Xrm.Sdk.Client;
using Microsoft.Xrm.Sdk.Messages;
using Microsoft.Xrm.Sdk.Metadata;
using Microsoft.Xrm.Sdk.Query;
public class FetchXmlEntityLinkWithNullValue
{
private static IOrganizationService _service;
public static void Main(string[] args)
{
// 设置连接信息
var connectionString = "AuthType=Office365;Url=https://your_organization.crm.dynamics.com;Username=your_username;Password=your_password";
var serviceProxy = (OrganizationServiceProxy)GetOrganizationServiceProxy(connectionString);
_service = (IOrganizationService)serviceProxy;
// 创建FetchXML查询
var fetchXml = @"
";
// 查询数据
var fetchExpression = new FetchExpression(fetchXml);
var results = _service.RetrieveMultiple(fetchExpression);
// 输出查询结果
foreach (var entity in results.Entities)
{
var name = entity.GetAttributeValue("name");
var city = entity.GetAttributeValue("address1_city");
var revenue = entity.GetAttributeValue("revenue");
Console.WriteLine($"Name: {name}, City: {city}, Revenue: {(revenue != null ? revenue.Value.ToString() : "null")}");
}
}
private static IServiceManagement GetOrganizationServiceProxy(string connectionString)
{
var connection = new CrmConnection(connectionString);
var serviceManagement = ServiceConfigurationFactory.CreateManagement(connection);
return serviceManagement;
}
}
请确保已经安装了Microsoft.Xrm.Sdk NuGet包。在代码中,我们首先设置了连接信息,然后创建了一个包含空值条件的FetchXML查询。接下来,我们使用IOrganizationService.RetrieveMultiple
方法执行查询,并遍历结果实体,输出结果。
注意替换代码中的连接字符串中的your_organization
,your_username
和your_password
为正确的组织URL,用户名和密码。
这个示例将获取所有revenue
属性为空的账户实体,并输出它们的名称、城市和收入。