[gelöst]Plugin - context.InputParameters

5. April 2011 15:55

Hallo Zusammen,

wie kann ich in meinem Plugin auf "context.InputParamters["State"] zugreifen?

Ich habe folgenden Codeausschnitt...

Code:
public class CreateInvoicesFromContract : IPlugin
    {
        private Guid contractId = Guid.Empty;
        public void Execute(IServiceProvider serviceProvider)
        {

            try
            {
                IPluginExecutionContext context = (IPluginExecutionContext)serviceProvider.GetService(typeof(IPluginExecutionContext));
                if (context.MessageName == "SetStateDynamicEntity")
                {                   
                    if (context.InputParameters.Contains("State") && (int)context.InputParameters["State"] == 1)
                    {//Tue jetzt endlich was..


Funktioniert ja alles ganz gut, bis auf das ich nen Fehler bekomme :-(

context.InputParameters["State"] ist vom Typ OptionSet. Deshalbt schlägt mir das Parsen auf Int fehl. Schon klar, so weit kam ich auch noch... Aber wie kann ich auf den Wert zugreifen?
Ich möchte eigentlcih abfragen ob mein Vertrag den Status "invoiced" hat.

Wenn ich in Visual Studio im Überwachungsfenster das context..... eingebe, dann Zeigt er mir folgendes an
inputparameters.JPG


Auf das Value kan ich aber nicht zugreifen :-(

Wie komme ich da jetzt dran?

[Edit] Manchmal sollte man einfach einen Tag warten, wenn man nicht weiterkommt. Die Lösung kommt dann von ganz alleine... :idea:

Code:
 if (context.InputParameters.Contains("State") && ((OptionSetValue)context.InputParameters["State"]).Value == 1){


So wird nen Schuh draus :-)


Viele Grüße
Pascal
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.