Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Efter att du skapat en anpassad assembly, gjort den tillgänglig för Návrhár zostáv eller rapportservern, lagt till lämplig säkerhetspolicy och lagt till en referens till din anpassade assembly i din rapportdefinition, kan du komma åt medlemmarna i klasserna i din assembly med hjälp av rapportuttryck. Om du vill referera till anpassad kod i ett uttryck måste du anropa medlemmen i en klass i sammansättningen. Hur du gör detta beror på om metoden är statisk eller instansbaserad.
Anropa statiska medlemmar från en rapportdefinitionsfil
Statiska medlemmar tillhör klassen eller typen själv och inte ett instansierat objekt. Dessa medlemmar kan nås genom att direkt ringa dem från klassen. Du bör använda statiska medlemmar för att anropa anpassade funktioner i en rapport när det är möjligt, eftersom statiska medlemmar presterar bäst. För att anropa en statisk medlem behöver du referera till den som ett uttryck som tar formen =Namespace.Class.Method.
Kalla statiska medlemmar
För att anropa en statisk medlem, sätt ditt uttryck lika med medlemmens fullt kvalificerade namn, vilket inkluderar namnrymden, klassnamnet och medlemsnamnet. Följande exempel anropar ToGBP-metoden , som omvandlar StandardCost-fältvärdet från dollar till brittiska pund och visar det i en rapport:
=CurrencyConversion.DollarCurrencyConversion.ToGBP(Fields!StandardCost.Value)
Viktig information om statiska fält och egenskaper
För närvarande körs alla rapporter i samma applikationsdomän. Detta innebär att rapporter med användarspecifik, statisk data exponerar denna data för andra instanser av samma rapport. Detta villkor kan göra det möjligt att statisk data från en användare är tillgänglig för alla användare som för närvarande kör en viss rapport. Av denna anledning rekommenderas det starkt att du inte använder statiska fält eller egenskaper i anpassade assemblies eller i Code-elementet; Använd istället instansfält eller egenskaper i dina rapporter. Statiska metoder kan fortfarande användas, eftersom de inte lagrar tillstånd eller data.
Anropa instansmedlemmar från en rapportdefinitionsfil
Om din anpassade assembly innehåller instansmedlemmar som du behöver komma åt i en rapportdefinition, måste du lägga till ett instansnamn för din klass i rapporten. Du kan lägga till ett instansnamn för en klass genom att använda fliken Kod i dialogen Rapportera egenskaper . För mer information om hur man lägger till instanser av klasser i en rapport, se Custom Code and Assembly References in Expressions in Návrhár zostáv (SSRS).
För att anropa en statisk medlem behöver du referera till den som ett uttryck som tar formen =Code*. InstanceName.Method*.
Medlemmar i Call Instance
För att anropa en instansmedlem i en anpassad assembly måste du referera till Code-nyckelordet följt av instansnamnet och metoden. Följande exempel anropar en instansmetod ToEUR som omvandlar StandardCost-fältvärdet från dollar till euro och visar det i en rapport:
=Code.m_myDollarConversion.ToEUR(Fields!StandardCost.Value)