作業用SOAP WCFをRESTに変換し、必要な値を読み取り、返す関数を使用します。SOAPをRESTに変換し、関数から多くのレコードを返す
ActiveCallSeviceは、VBでSOAPを使用して複数のレコードを返すようにエンティティを読み取ります。 RESTに変更するときに、どのようにすべてのレコードを返すようにコードすることができますか?私はuriTemplateのさまざまなバージョンを試しましたが、何も動いていません。私は基本的にビューを読み、uriからparmsを取得せずにデータを返す必要があります。私はhereから良い例を使用しましたが、その1つは手作業でループから返された値をコーディングしており、必要な値を読み込んで返す関数があります。
私のIActiveCalls.vbコードは現在WebGet上にあります - エラー状態 - 定数式が必要です。 C:\ inetpub \ VS2013 \ wcfWazeP1 \ IActiveCalls.vb 10 13 WcfWazeP1。
Public Interface IActiveCalls
Property UriTemplate As String
<WebGet(UriTemplate = "Function GetWazeCalls() As List(Of DIT_CurrentSOTrafficIncidents)")>
<OperationContract()>
Function GetWazeCalls() As List(Of DIT_CurrentSOTrafficIncidents)
Implements IActiveCalls
Dim dbP1RDW As New ReportingDWEntities
Public Function GetWazeCalls() As List(Of DIT_CurrentSOTrafficIncidents) Implements IActiveCalls.GetWazeCalls
Return dbP1RDW.DIT_CurrentSOTrafficIncidents.OrderBy(Function(o) o.IncidentDate).ToList()
End Function
<DataContract()>
Public Class ActiveCalls
End Class
実装ライン上のマイActiveCalls.vbコード - エラーが-Class 'ActiveCallsServiceは、' インターフェイスのための '文字列としてプロパティUriTemplate' を実装する必要があります国のIActiveCalls "。プロパティの実装には、 'ReadOnly'または 'WriteOnly'指定子が一致している必要があります。 C:\ inetpub \ VS2013 \ wcfWazeP1 \ ActiveCalls.vb 9 16 WcfWazeP1。
Imports System
Imports System.Collections.Generic
Imports System.Linq
Imports System.Runtime.Serialization
Imports System.ServiceModel
Imports System.Text
Public Class ActiveCallsService
Implements IActiveCalls
Dim dbP1RDW As New ReportingDWEntities
Public Function GetWazeCalls() As List(Of DIT_CurrentSOTrafficIncidents) Implements IActiveCalls.GetWazeCalls
Return dbP1RDW.DIT_CurrentSOTrafficIncidents.OrderBy(Function(o) o.IncidentDate).ToList()
End Function
End Class
12/07/2017ありがとうございましたGMan80013、変更後。まだ実行できないようなエラーがあります。私は運がないUriTemplate宣言のいくつかのプレースメントを試しました。 UriTemplateの名前はどれくらい重要ですか?私は何かを呼び出すことができますか、それともActiveCallsServiceを参照する必要がありますか?とても知らないうちに申し訳ありません。 ActiveCalls.vb 2つのエラー 1-フィールドまたはプロパティ 'UriTemplate'が見つかりません。 C:\ inetpub \ VS2013 \ wcfWazeP1 \ IActiveCalls.vbWcfWazeP1 2 'WebGetAttribute'は 'System.Attribute'から継承されないため、属性として使用できません。 C:\のinetpub \ VS2013 \ wcfWazeP1 \ IActiveCalls.vb パブリックインターフェイスIActiveCalls
Property UriTemplate As String
<WebGet(UriTemplate:="currentSOTrafficeIncidents")>
<OperationContract()>
Function GetWazeCalls() As List(Of DIT_CurrentSOTrafficIncidents)
End Interface
ActiveCalls.vb - 私は公共のプロパティUriTemplateと、ここでエラーなし 輸入システム 輸入System.Collections.Generic 輸入を追加しましたSystem.Linqの 輸入System.Runtime.Serialization輸入System.ServiceModel 輸入System.Textの
Public Class ActiveCallsService
Implements IActiveCalls
Dim dbP1RDW As New ReportingDWEntities
Public Property UriTemplate As String Implements IActiveCalls.UriTemplate
Public Function GetWazeCalls() As List(Of DIT_CurrentSOTrafficIncidents)
Implements IActiveCalls.GetWazeCalls
Return dbP1RDW.DIT_CurrentSOTrafficIncidents.OrderBy(Function(o)
o.IncidentDate).ToList()
End Function
End Class
12/07/2017ありがとうございましたGMAN80013、変更後。それでも実行できないようなエラーがあった場合は、私の質問をアップデートで編集しました。 – Deanna