DataSet unterstützt nicht System.Nullable & lt; & gt; in Export
Ich versuche einen Bericht zu erstellen mit Export zu Excel, PDF, Textdatei. Nun, ich Tue dies in MVC. Ich habe eine Klasse die ich mit dem Namen SPBatch (das ist die genaue Bezeichnung von meinen Gespeicherten Prozedur, die in meinem SQL) und enthält die folgenden:
public string BatchNo { get; set; }
public string ProviderName { get; set; }
public Nullable<System.Int32> NoOfClaims { get; set; }
public Nullable<System.Int32> TotalNoOfClaims { get; set; }
public Nullable<System.Decimal> TotalBilled { get; set; }
public Nullable<System.Decimal> TotalInputtedBill { get; set; }
public Nullable<System.DateTime> DateCreated { get; set; }
public Nullable<System.DateTime> DateSubmitted { get; set; }
public Nullable<System.DateTime> DueDate { get; set; }
public string Status { get; set; }
public string RefNo { get; set; }
public string BatchStatus { get; set; }
public string ClaimType { get; set; }
wie Sie sehen können, einige meiner Spalten sind als null deklariert. Es ging reibungslos, von der Suche und Anzeige der Ergebnisse in einer Tabelle. Ich habe mehrere buttons unter dem Bild-Tasten für den export und jedes mal, wenn ich versuche zu exportieren, in Excel bekomme ich aber immer das problem "DataSet keine support-System.Nullable<>" in diesem Teil von meinem code:
foreach (MemberInfo mi in miArray)
{
if (mi.MemberType == MemberTypes.Property)
{
PropertyInfo pi = mi as PropertyInfo;
dt.Columns.Add(pi.Name, pi.PropertyType); //where the error pop's up.
}
else if (mi.MemberType == MemberTypes.Field)
{
FieldInfo fi = mi as FieldInfo;
dt.Columns.Add(fi.Name, fi.FieldType);
}
}
den Fehler zeigt, bis auf die eine mit einem Kommentar. Können Sie mir helfen, was zu tun ist? Ich habe versucht, hinzufügen von DBNull in meinem code, aber noch immer bekomme ich den gleichen Fehler. Ich habe versucht, das entfernen null-Werte zulässt, in meinem SPBatch aber ich bekomme eine Fehlermeldung, dass einige Tabellen werden müssen, werden als null deklariert.
Was soll ich tun?
DataSet
, so erscheint es nicht für die Unterstützung Ihrer Anforderungen. InformationsquelleAutor der Frage Ms. B | 2014-04-23
Du musst angemeldet sein, um einen Kommentar abzugeben.
versuchen mit
InformationsquelleAutor der Antwort Damith
Durch eine C# - version ein erzeugen einer datatable und einige daran herum zu hacken, ich kann Ihnen diese Antwort in VB - ich habe es hier, weil ich habe gerade eine Menge ärger wollen, um eine filterbare dataset aus einer stored proc, während mit einem einfachen "datalayer". Ich hoffe, es hilft jemand anderes!
Hinweis: Der Anwendungsfall ist, wo Sie verwenden möchten BindingSource.Filter = "query-string":
InformationsquelleAutor der Antwort Richard Griffiths
Ich suchen würde, für null-Werte zulässt, und ersetzen Sie es mit einem string, der null sein kann, im Gegensatz zu einem DateTime.
Hier ist die komplette version:
InformationsquelleAutor der Antwort Ross Bush