Aracılığıyla paylaş


Arama alanına göre filtrelenmiş bir müşteri listesini alma

Şunlar için geçerlidir: İş Ortağı Merkezi | 21Vianet tarafından işletilen İş Ortağı Merkezi | ABD Kamu için Microsoft Bulut İş Ortağı Merkezi

Filtreyle eşleşen Müşteri kaynakları koleksiyonunu alır. İsteğe bağlı olarak bir sayfa boyutu ayarlayabilirsiniz. Şirket adına, etki alanına, dolaylı kurumsal bayiye veya dolaylı bulut çözümü sağlayıcısına (CSP) göre filtreleyebilirsiniz.

Önkoşullar

  • İş Ortağı Merkezi kimlik doğrulamasında açıklandığı gibi kimlik bilgileri. Bu senaryo hem tek başına Uygulama hem de Uygulama+Kullanıcı kimlik bilgileriyle kimlik doğrulamayı destekler.

  • Kullanıcı tarafından yapılan bir filtre.

C#

Filtreyle eşleşen bir müşteri koleksiyonu elde etmek için önce bir SimpleFieldFilter nesnesi örneği oluşturarak filtreyi oluşturun. CustomerSearchField öğesini içeren bir dize geçirmeniz ve filtre işleminin türünü FieldFilterOperation.StartsWith olarak belirtmeniz gerekir. Bu, müşterilerin bitiş noktası tarafından desteklenen tek alan filtresi işlemidir. Ayrıca filtreleme ölçütü olarak dizeyi sağlamanız gerekir.

Ardından, BuildSimpleQuery yöntemini çağırıp filtreyi geçirerek sorguya geçirmek için bir iQuery nesnesi örneği oluşturun. BuildSimplyQuery, QueryFactory sınıfı tarafından desteklenen sorgu türlerinden yalnızca biridir.

Son olarak, filtreyi yürütmek ve sonucu almak için önce IAggregatePartner.Customers'ı kullanarak iş ortağının müşteri işlemlerine yönelik bir arabirim elde edin. Ardından Query veya QueryAsync yöntemini çağırın.

IAggregatePartner partnerOperations;

// Specify the partial string to filter by (to match Contoso).
string searchPrefix = "cont"

// Create a simple field filter.
var fieldFilter = new SimpleFieldFilter(
    CustomerSearchField.CompanyName.ToString(),
    FieldFilterOperation.StartsWith,
    searchPrefix);

// Create an iQuery object to pass to the Query method.
var myQuery = QueryFactory.Instance.BuildSimpleQuery(fieldFilter);

// Get the collection of matching customers.
var customers = partnerOperations.Customers.Query(myQuery);

Örnek: Konsol test uygulaması. Proje: İş Ortağı Merkezi SDK Örnekleri Sınıfı: FilterCustomers.cs

REST isteği

İstek söz dizimi

Metot İstek URI'si
GET {baseURL}/v1/customers?size={size}&filter={filter} HTTP/1.1

URI parametreleri

Aşağıdaki sorgu parametrelerini kullanın.

Veri Akışı Adı Tür Zorunlu Açıklama
size int No Bir kerede görüntülenecek sonuç sayısı. Bu parametre isteğe bağlıdır.
filtrele filtrele Evet Müşterilere uygulanacak filtre. Bu kodlanmış bir dize olmalıdır.

Filtre Söz Dizimi

Filtre parametresini virgülle ayrılmış bir dizi anahtar-değer çifti olarak oluşturmanız gerekir. Her anahtar ve değer ayrı ayrı tırnak içine alınıp iki nokta üst üste ile ayrılmalıdır. Filtrenin tamamı kodlanmalıdır.

Kodlanmamış bir örnek şöyle görünür:

?filter{"Field":"CompanyName","Value":"cont","Operator":"starts_with"}

Aşağıdaki tabloda gerekli anahtar-değer çiftleri açıklanmaktadır:

Anahtar Değer
Alan Filtre uygulama alanı. Geçerli değerler CustomerSearchField içinde bulunabilir.
Değer Filtre ölçütü olarak değer. Değerin büyük/küçük harf durumu yoksayılır.
İşleç Uygulanacak işleç. Bu müşteri senaryosu için desteklenen tek değer "starts_with".

İstek üst bilgileri

Daha fazla bilgi için bkz . İş Ortağı Merkezi REST üst bilgileri.

Request body

Yok.

İstek örneği

GET https://api.partnercenter.microsoft.com/v1/customers?size=0&filter=%7B%22Field%22%3A%22CompanyName%22%2C%22Value%22%3A%22Cont%22%2C%22Operator%22%3A%22starts_with%22%7D HTTP/1.1
Authorization: Bearer <token>
Accept: application/json
MS-RequestId: 5ce66de5-eea9-486f-a11c-c852aa3d1502
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
X-Locale: en-US
Host: api.partnercenter.microsoft.com
Connection: Keep-Alive

REST yanıtı

Başarılı olursa, bu yöntem yanıt gövdesinde eşleşen Müşteri kaynaklarından oluşan bir koleksiyon döndürür.

Yanıt başarısı ve hata kodları

Her yanıt, başarılı veya başarısız olduğunu belirten bir HTTP durum kodu ve ek hata ayıklama bilgileriyle birlikte gelir. Bu kodu, hata türünü ve ek parametreleri okumak için bir ağ izleme aracı kullanın. Tam liste için bkz . İş Ortağı Merkezi REST hata kodları.

Yanıt örneği

HTTP/1.1 200 OK
Content-Length: 1839
Content-Type: application/json; charset=utf-8
MS-CorrelationId: aaaa0000-bb11-2222-33cc-444444dddddd
MS-RequestId: dfeda56c-1af5-43fc-a9c0-346b9e85dc96
MS-CV: n0lMNyJtaUC802pO.0
MS-ServerId: 202010223
Date: Fri, 24 Feb 2017 22:08:20 GMT

{
    "totalCount": 3,
    "items": [{
            "id": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
            "companyProfile": {
                "tenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
                "domain": "contoso190.onmicrosoft.com",
                "companyName": "Contoso190",
                "links": {
                    "self": {
                        "uri": "/customers/aaaabbbb-0000-cccc-1111-dddd2222eeee/profiles/company",
                        "method": "GET",
                        "headers": []
                    }
                },
                "attributes": {
                    "objectType": "CustomerCompanyProfile"
                }
            },
            "relationshipToPartner": "reseller",
            "links": {
                "self": {
                    "uri": "/customers/aaaabbbb-0000-cccc-1111-dddd2222eeee",
                    "method": "GET",
                    "headers": []
                }
            },
            "attributes": {
                "objectType": "Customer"
            }
        }, {
            "id": "bbbbcccc-1111-dddd-2222-eeee3333ffff",
            "companyProfile": {
                "tenantId": "bbbbcccc-1111-dddd-2222-eeee3333ffff",
                "domain": "ContosoCorpCo.onmicrosoft.com",
                "companyName": "Contoso",
                "links": {
                    "self": {
                        "uri": "/customers/bbbbcccc-1111-dddd-2222-eeee3333ffff/profiles/company",
                        "method": "GET",
                        "headers": []
                    }
                },
                "attributes": {
                    "objectType": "CustomerCompanyProfile"
                }
            },
            "relationshipToPartner": "reseller",
            "links": {
                "self": {
                    "uri": "/customers/bbbbcccc-1111-dddd-2222-eeee3333ffff",
                    "method": "GET",
                    "headers": []
                }
            },
            "attributes": {
                "objectType": "Customer"
            }
        }, {
            "id": "ccccdddd-2222-eeee-3333-ffff4444aaaa",
            "companyProfile": {
                "tenantId": "ccccdddd-2222-eeee-3333-ffff4444aaaa",
                "domain": "contosocorpdemo.onmicrosoft.com",
                "companyName": "Contoso",
                "links": {
                    "self": {
                        "uri": "/customers/ccccdddd-2222-eeee-3333-ffff4444aaaa/profiles/company",
                        "method": "GET",
                        "headers": []
                    }
                },
                "attributes": {
                    "objectType": "CustomerCompanyProfile"
                }
            },
            "relationshipToPartner": "reseller",
            "links": {
                "self": {
                    "uri": "/customers/ccccdddd-2222-eeee-3333-ffff4444aaaa",
                    "method": "GET",
                    "headers": []
                }
            },
            "attributes": {
                "objectType": "Customer"
            }
        }
    ],
    "links": {
        "self": {
            "uri": "/customers?size=0&filter=%7B%22Field%22%3A%22Domain%22%2C%22Value%22%3A%22cont%22%2C%22Operator%22%3A%22starts_with%22%7D",
            "method": "GET",
            "headers": []
        }
    },
    "attributes": {
        "objectType": "Collection"
    }
}