1

SAP Web サービスから日付と時刻を文字列として返すサービス呼び出しがあり、それらの文字列をローカル モデルの datetime オブジェクトに解析しようとしています。

これまでのところ、メソッドをスタブ化しましたが、最初に気付いたのは、デリゲート型ではないため日付を変換できないとコンパイラが不平を言っていることでした。

エラー

エラー 1 'Date' はデリゲート型ではないため、ラムダ式を 'Date' に変換できません。C:\Users\phil.murray\Desktop\SAP Orders Test\WindowsApplication1\Form1.vb 43 57 WindowsApplication1

コード

    _ordersProxy.Z_SPIN_ORDERS(_header, _order, _code)

    Return From h In header.OrderBy(Function(w) w.AUFNR)
                Select New Order With {.Aufnr = h.AUFNR, .BatchType = h.BATCH_TYPE,
                                       .EngineType = h.ENGINE_TYPE, .ProgrammedQuantity = h.PROGRAMMED_QTY,
                                       .StartDate = Function()

                                                        Dim startDate As DateTime
                                                        Dim startTime As DateTime

                                                        Date.TryParse(h.START_DATE, startDate)
                                                        Date.TryParse(h.START_TIME, startTime)


                                                        Return New DateTime(startDate.Year, startDate.Month, startDate.Day,
                                                                            startTime.Hour, startTime.Minute, startTime.Second)

                                                    End Function}

ローカルモデル

Public Class Order

    Public Property Aufnr As String
    Public Property EngineType As String
    Public Property ProgrammedQuantity As Int16
    Public Property BatchType As String
    Public Property StartDate As DateTime

    Public Property OrderParts As IList(Of Part)
    Public Property OrderProcessCodes As IList(Of ProcessCode)

End Class

この文字列をラムダ式で解析するときに何が欠けていますか?

4

1 に答える 1

1

問題は、StartDateおそらくタイプのプロパティであるということですDateTimeが、ラムダ式はFunc(Of DateTime).

ラムダ式を呼び出して set にすることもできますStartDateが、基本的にプロパティが typeの場合、値を取得するために実行できる関数だけでなく、その型のDateTimeを与える必要があります。

もちろん、別の (可能性のある) 別の方法は、StartDateプロパティの型を変更することです。現時点で何をしようとしているか、またはこのプロパティを設定しているオブジェクトの種類が正確には不明です。

于 2013-04-18T09:56:28.903 に答える