- Ich habe einen RDLC-Bericht
- Datum Format in SQL DB gespeichert ist Georgisch. Ich möchte das Datum im Bericht als Persisch anzeigen.
- Mit Linq möchte ich alle Felder der DB zusätzlich ein neues Feld auswählen, das als persische Datumsfelder verwendet werden soll.
I unten Syntax verwendet:Wie wählt man alle Felder plus einige neue Felder in LINQ?
var invoices = from invoice in dbContext.eve_Invoices
select new
{
invoice.CreatorID,
invoice.DateChange,
invoice.DateCreation,
invoice.DatePrint,
invoice.Discount,
invoice.DiscountPercentage,
invoice.DiscountType,
invoice.Fare,
invoice.ID,
invoice.InvoiceStatus,
invoice.NumberOfItems,
invoice.Packaging,
invoice.PrintID,
invoice.RawPrice,
invoice.RoundOff,
invoice.ServiceCharge,
invoice.ServingType,
invoice.TableID,
invoice.Tax,
invoice.TotalPrice,
invoice.ValidityStatus,
PersianYear = invoice.DateCreation != null ? pc.GetYear((DateTime)invoice.DateCreation) : 0,
PersianMonth = invoice.DateCreation != null ? pc.GetDayOfMonth((DateTime)invoice.DateCreation) : 0,
PersianDay = invoice.DateCreation != null ? pc.GetDayOfMonth((DateTime)invoice.DateCreation) : 0
};
gibt es eine Möglichkeit, alle Bereiche der Rechnung zusätzlich zu den neuen Feldern zu passieren, wie:
var invoices = from invoice in dbContext.eve_Invoices
select new
{
invoice.*,
PersianYear = invoice.DateCreation != null ? pc.GetYear((DateTime)invoice.DateCreation) : 0,
PersianMonth = invoice.DateCreation != null ? pc.GetDayOfMonth((DateTime)invoice.DateCreation) : 0,
PersianDay = invoice.DateCreation != null ? pc.GetDayOfMonth((DateTime)invoice.DateCreation) : 0
};
Ich habe auch versucht, wählen Sie neue {Rechnung , ....}, aber es wird nicht zu Datentabelle gleich wie die erste ergeben.
Ihre erste Syntax wird nicht funktionieren, sollten Sie Parameter für Ihren anonymen Typ benannt haben, Auch ich denke, DateTime Casting wird hier nicht funktionieren. –