Jak: Dodawanie deskryptora filtr do metody Finder
Deskryptory filtru umożliwi konsumentom wartości przekazywane do metody realizacji modelu.Aby uzyskać więcej informacji, zobacz Projektowanie modelu połączeń danych biznesowych.
Jeden z typowym scenariuszem jest użytkowników w programie SharePoint chcesz pobierać instancje zewnętrznych typu zawartości, spełniających pewne kryteria.W tym scenariuszu może obsługiwać dodając deskryptora filtr metody Finder.
Aby dodać deskryptor filtr do metody Finder
W Szczegóły metody BDC okna, rozwiń węzeł metoda Finder, rozwiń węzeł Parametry węzła, a następnie dodaj parametr wejściowy.Aby uzyskać więcej informacji, zobacz Jak: dodać parametr do metody.
W Szczegóły metody okno, wybierz polecenie deskryptora typu parametru.
Na pasku menu wybierz widoku, Okno właściwości.
W Właściwości ustawiony w oknie Nazwy typu właściwość Typ danych odpowiedni dla filtru.
Na przykład filtr może użyć daty zamówienia do ograniczania liczby zamówień sprzedaży, zwracany przez metodę.Do obsługi tego filtru Nazwy typu właściwość deskryptora typu musi być ustawiona tak, System.DateTime.
W Szczegóły metody okna, rozwiń węzeł Filtr deskryptorów węzła.
W Dodaj deskryptora filtru wybierz Utworzyć filtr deskryptor.
Nowy deskryptor filtru wyświetlane są pod Filtr deskryptorów węzła.
Na pasku menu wybierz widoku, Okno właściwości.
W Właściwości okno, wybierz polecenie typu właściwości.
Na liście pojawi się na typu właściwości, wybierz polecenie wzorek filtrowania, który ma.
Na przykład, aby utworzyć filtr, który używa dacie zamówienia, aby ograniczyć liczbę zamówień sprzedaży, które są zwracane w metodzie Finder, wybierz polecenie Porównanie.Filtr Porównanie gwarantuje, że metoda wyszukiwanie zwraca tylko te wystąpienia, które spełniają określony warunek.Aby uzyskać informacje dotyczące każdego wzorca filtrowania, zobacz Z filtrów obsługiwane typy przez kontroler BDC.
W Właściwości okno, wybierz polecenie Skojarzony typ deskryptorów właściwości.
Na liście pojawi się na Skojarzony typ deskryptorów właściwości, wybierz typ deskryptora, utworzony we wcześniejszej części tej procedury.Dotyczy to filtr parametr wejściowy metody Finder.
Dodawanie kodu do metody Finder, która zwraca dane.Parametr wejściowy można użyć jako warunek w kwerendzie wybierającej.
Poniższy przykład zwraca zamówień sprzedaży, które mają daty określonej kolejności.
[!UWAGA]
Zamień wartość ServerName pola z nazwą serwera.
Public Shared Function ReadList(ByVal OrderDateParam As DateTime) As IEnumerable(Of SalesOrderHeader) Const ServerName As String = "MySQLServerName" Dim dataContext As AdventureWorksDataContext = _ New AdventureWorksDataContext("Data Source=" & ServerName & _ ";Initial Catalog=AdventureWorks;Integrated Security=True") Dim NoValuePassedIn As DateTime = Convert.ToDateTime("1/1/1900 12:00:00 AM") Dim DefaultDateTime As DateTime = Convert.ToDateTime("2001-09-01 00:00:00.000") ' If the user does not provide a value for the filter. If OrderDateParam = NoValuePassedIn Then ' Use a default date time value. OrderDateParam = DefaultDateTime End If Dim SalesOrderHeader As IEnumerable(Of SalesOrderHeader) = _ From SalesOrderHeaders In dataContext.SalesOrderHeaders _ Where SalesOrderHeaders.OrderDate = OrderDateParam _ Select SalesOrderHeaders Return SalesOrderHeader End Function
public static IEnumerable<SalesOrderHeader> ReadList(DateTime OrderDateParam) { const string ServerName = "MySQLServerName"; AdventureWorksDataContext dataContext = new AdventureWorksDataContext ("Data Source=" + ServerName + ";" + "Initial Catalog=AdventureWorks;Integrated Security=True"); DateTime NoValuePassedIn = Convert.ToDateTime("1/1/1900 12:00:00 AM"); DateTime DefaultDateTime = Convert.ToDateTime("2001-09-01 00:00:00.000"); // If the user does not provide a value for the filter. if (OrderDateParam == NoValuePassedIn) { // Use a default date time value. OrderDateParam = DefaultDateTime; } IEnumerable<SalesOrderHeader> SalesOrderHeader = from salesOrderHeaders in dataContext.SalesOrderHeaders where salesOrderHeaders.OrderDate == OrderDateParam select salesOrderHeaders; return SalesOrderHeader; }
Zobacz też
Zadania
Jak: Dodawanie szczególną metodę Finder
Jak: Definiowanie deskryptora typ parametru