Ich habe eine generische Methode, die Typ t (generisches) zurückgibt. In der Methode, wenn t ein Array ist, möchte ich dieses Array mit Daten erstellen und bevölkern. Ich habe jetzt eine Liste von Objekten dieses Basistyps. Issue. Die angegebene Linie wird nicht kompilieren ("" Typ "Objekt" nicht konvertieren? [] 'Zu' t '"), aber letztendlich möchte ich erreichen.
static void Main(string[] args)
{
Console.WriteLine("Hello, World!");
Testing test = new Testing();
DataClass[] output = test.MyMethod();
}
public class DataClass
{
public int I = 0;
public DataClass()
{
}
}
public class Testing
{
public T MyMethod()
{
T result = default(T);
if (typeof(T).IsArray)
{
Type? baseType = typeof(T).GetInterfaces()
.Where(o => o.IsGenericType
&& o.GetGenericTypeDefinition() == typeof(System.Collections.Generic.IEnumerable))
.Select(o => o.GetGenericArguments()[0]).FirstOrDefault();
if (baseType != null)
{
List items = new List();
for (int i = 0; i < 5; i++)
{
// Just example code here to populate the array...
items.Add(Activator.CreateInstance(baseType));
}
result = (T)items.ToArray(); //
Ich habe eine generische Methode, die Typ t (generisches) zurückgibt. In der Methode, wenn t ein Array ist, möchte ich dieses Array mit Daten erstellen und bevölkern. Ich habe jetzt eine Liste von Objekten dieses Basistyps. Issue. Die angegebene Linie wird nicht kompilieren ("" Typ "Objekt" nicht konvertieren? [] 'Zu' t '"), aber letztendlich möchte ich erreichen.[code]static void Main(string[] args) { Console.WriteLine("Hello, World!");
Testing test = new Testing(); DataClass[] output = test.MyMethod(); }
public class DataClass { public int I = 0; public DataClass() {
} }
public class Testing { public T MyMethod() { T result = default(T); if (typeof(T).IsArray) { Type? baseType = typeof(T).GetInterfaces() .Where(o => o.IsGenericType && o.GetGenericTypeDefinition() == typeof(System.Collections.Generic.IEnumerable)) .Select(o => o.GetGenericArguments()[0]).FirstOrDefault(); if (baseType != null) { List items = new List(); for (int i = 0; i < 5; i++) { // Just example code here to populate the array... items.Add(Activator.CreateInstance(baseType)); }
Ich baue eine Simulations-Engine in Python und möchte Generika verwenden, damit Ereignisse stark auf einen Simulationsstatus typisiert werden. Ich habe so etwas:
from __future__ import annotations...
Ich habe im Laufe der Zeit einige Daten zu den Professoren einiger verschiedener akademischer Abteilungen gesammelt. Da ich die Daten aus zwei verschiedenen Quellen gesammelt habe, weiß ich, dass die...
Ich habe RA- und DEC -Zeigendaten, die ich auf einem polaren Diagramm zeigen möchte (Konvertierung in Rho und Theta).
Die Theta -Bewegung ist sehr klein, ~ 0,01 Grad. Dies ist in einem vollständigen...
Ich habe eine Vorlagenfunktion mit verschiedenen Typparametern und abhängig von diesen Typen die Funktion Aufrufe ein static_assert (false) . Ich möchte wissen, wann mein Code nicht für bestimmte...