0

次の2つの機能があります。

    private object[] GetFormatedDataArray(
            Dienstleistungsreservierung dlres,
            KostenstellenProvider kstProvider)
        {
            SAPKonto konto;
            try { konto = KontierungsProvider.Instance.GetSAPKonto(dlres); }
            catch { konto = new SAPKonto(); konto.KontoText = "UNBEKANNT"; }

            Kostenstelle kst = kstProvider.GetKostenstelle(dlres.Raumreservierung.Buchung);
            KostenstellenValidator.Validate(kst);

            return new object[] {

                dlres.Raumreservierung.VirtualRaum.Etage.Gebaeude.KonfStandort,
                dlres.Raumreservierung.VirtualRaum.Etage.Gebaeude.Partner.AnsprechPartnerName,  

       ......

}

次の値の可能性があります。

dlres.Raumreservierung.VirtualRaum.Etage.Gebaeude.Partner

はnullです。そのため、.csvファイルを作成するif句を実行しました。値がnullまたは!= nullの場合、ファイルを作成する必要があります。

その関数/その関数の戻り値を使用して、.csv ファイルを作成します。

 {
       .....
        var file = GetCsvFile(dl, accDate);
                    // CSV werden auf Platte geschrieben!
                    var csvWriter = new CSVWriter(file);
                    csvWriter.WriteLine(GetHeader());

                    foreach (Dienstleistungsreservierung dlres in dlDic[dl])
                    {
                        if (dlres.Raumreservierung.VirtualRaum.Etage.Gebaeude.Partner == null || dlres.Raumreservierung.VirtualRaum.Etage.Gebaeude.Partner != null)
                        {
                            csvWriter.WriteLine(GetFormatedDataArray(dlres, kstProvider));
                        }
                    }
                    csvWriter.Flush();

    ....
    }

しかし、エラーはまだありますか? 他に移動する方法はありますか?

4

1 に答える 1

2
if (dlres.Raumreservierung.VirtualRaum.Etage.Gebaeude.Partner == null || 
    dlres.Raumreservierung.VirtualRaum.Etage.Gebaeude.Partner != null)

ステートメントif矛盾するチェックが含まれています。の値dlres.Raumreservierung.VirtualRaum.Etage.Gebaeude.Partnerが null になる可能性がある場合は、null でないかどうかを確認してから続行する必要があります。以下のようなもの

if (dlres.Raumreservierung.VirtualRaum.Etage.Gebaeude.Partner != null)
于 2012-11-15T10:56:07.530 に答える