System.Decimal
-
In ADO.NET gibt es die Möglichkeit, eine virtuelle Datenbank im Speicher über das DataSet anzulegen.
DataSet ds = new DataSet("nordwind"); DataTable dt = new DataTable("kunde"); dt.Columns.Add("kdnr", System.Type.GetType("System.Decimal")); ds.Tables.Add(dt); Console.WriteLine(ds.GetXmlSchema());
Nun, eine Integer-Spalte (das habe ich auch in der MSDN gefunden) wird als Parameter der Add-Funktion mit
System.Type.GetType("System.Decimal"));
definiert.
Doch wie sieht es mit anderen Datentypen aus, wie z. B. string (varchar) udgl. ...
-
An und für sich sehr einfach ... (muß mir ja auch alles selbst beantworten hier
)
Einfach
<Namespace>.<Type>Bei String wird es etwas gemein, denn
string abc; // ok String def; // ok
Aber
tb.Columns.Add("kdnrx", System.Type.GetType("System.string")); // nicht ok tb.Columns.Add("kdnrx", System.Type.GetType("System.String")); // ok
-
Das liegt daran dass jede Sprache interne Datentypen haben kann die aber irgendeiner Framework-Klasse entsprechen müsen. System.String ist die Klasse, string der Name in C#. Vergleiche auch System.Int32 <=> int usw...
BTW: IMHO dürfte typeof(System.String) Laufzeiteffizienter sein als System.Type.GetType("System.String")
-
Vielen Dank! War eine gute Info!