[WWF] Array als Argument übergeben

16/12/2009 - 21:37 von wolf | Report spam
Hallo,

ich mache hier gerade meine ersten Gehversuche mit der Workflow
Foundation unter VS2010/.NET 4.0 - und stehe auch gleich vor dem ersten
Problem. Meine Versuche mache ich dabei mit einer
Workflow-Konsolen-Applikation, die bis auf die Definition eines
Interfaces, einer Klasse und der (absolut leeren) Main-Prozedur keinen
Code enthàlt. Ich verwende V2010 Ultimate Beta 2.

Ich möchte eine Liste von Klasseninstanzen als Argument an den Workflow
übergeben. Bei den Klasseninstanzen handelt es sich um eine selbst
definierte Klasse:

Public Class Person
Implements IPerson

Public Property Vorname As String Implements IPerson.Vorname
Public Property Maennlich As Boolean Implements IPerson.Maennlich

End Class

Im Workflow Designer habe ich einem leeren Workflow ein Argument vom Typ
IPerson[] hinzugefügt und 'Nothing' als Standardwert festgelegt. Probiere
ich jetzt, das Projekt zu kompilieren, erhalte ich die Fehlermeldung

error XC1000: XC1020: Buildfehler im XAML MSBuild-Task: 'startIndex darf
nicht lànger als die Lànge der Zeichenfolge sein.

Verwende ich als Argumenttyp Person[], tritt der selbe Fehler auf. Ändere
ich den Datentyp des Arguments auf einen 'normalen' Typ, tritt dieser Fehler
nicht auf.

Sollte das so eigentlich funktionieren, oder bin ich hier gerade völlig
auf dem Holzweg?


Danke -

Wolf


Der Workflow als xaml-Datei (Namespaces gekürzt):

<Activity x:Class="Workflow1" this:Workflow1.PersonenListe="[Nothing]"
xmlns:local="clr-namespace:WorkflowConsoleApplication1"
[...]
xmlns:this="clr-namespace:"
xmlns:w="clr-namespace:WorkflowConsoleApplication1;assembly=WorkflowConsoleApplication1,
Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"
xmlns:x="http://schemas.microsoft.com/winfx/...">
<x:Members>
<x:Property Name="PersonenListe" Type="InArgument(local:IPerson[])" />
</x:Members>
<mva:VisualBasic.Settings>Assembly references and imported namespaces
serialized as XML namespaces</mva:VisualBasic.Settings>
</Activity>
Die beste Bezeichnung für Lotto ist immer noch "Dummensteuer". (Andreas
Mauerer in d.a.f.k.)
 

Lesen sie die antworten

#1 wolf
16/12/2009 - 21:48 | Warnen spam
Wolf Wiegand schrieb:

[...]
error XC1000: XC1020: Buildfehler im XAML MSBuild-Task: 'startIndex darf
nicht lànger als die Lànge der Zeichenfolge sein.
[...]



Hm, das hat offenbar nichts mit dem Array zu tun, sondern damit, dass
der Typ des Arguments eine Klasse aus meiner Anwendung ist. Gebe ich als
Typ z.B. System.Exception an, gibt es keine Probleme.

Die Frage sollte also eher lauten: Ist es nicht möglich, eigene Typen
als Argument an einen Workflow zu übergeben? Und falls doch, dann wie?


Danke und schönen Gruß,

Wolf
Es ist keine engstirnige Sichtweise, wenn man zu etwas einen Kommentar abgibt.
Engstirnig wird's erst, wenn man einen negativen Kommentar als persönlichen
Angriff auffasst. (Mathias Pohl in d.s.i.m.)

Ähnliche fragen