0

この特定のエラー メッセージについて複数の質問が寄せられたことは承知していますが、どれも私が経験していることとは関係がありませんでした。

Silverlight & WCF プロジェクトがあります。wcf サービスを呼び出して、データを正常に取得しています。私のサービスには複数の機能があり、それらはすべてうまく機能します。

私の問題は、作成したばかりの関数を呼び出すと、「リモート サーバーがエラーを返しました: NotFound」というエラー メッセージが表示されることです。理由はわかりません。wcf プロジェクトをビルドし、Silverlight でサービスを更新しました。エラーリストには何も表示されません。

どんな助けでも大歓迎です!!!!

Web サービスであるクラス レベルの変数があります。

Silverlight でのコード:

Private WithEvents Service As WebService.SQLServiceClient = GetNewService()

Private Sub btnSave_Click(sender As Object, e As System.Windows.RoutedEventArgs) Handles btnSave.Click
    Dim View As PagedCollectionView = dgDeficiences.ItemsSource

    Service.SaveChangesAsync(txtLOB.Text, View.SourceCollection)
End Sub

WCF のコード:

<OperationContract()>
Public Function SaveChanges(ByVal LOB As String, ByVal Deficiences As List(Of Deficiences)) As Boolean
    Dim DT_Old, DT_New, DT_Changes As DataTable
    Dim Conn As New SqlConnection(ConnectionString)
    Dim Cmd As New SqlCommand(String.Empty, Conn)

    DT_Old = GetSQLData(CommandType.StoredProcedure, "EHL_GetLookups", {"Section", "Data"}, {3, LOB})

    If DT_Old.Rows.Count < 1 Then Return False

    'Copy deficiencies in sql to DT_New
    DT_New = DT_Old.Copy

    'Update 3 fields with data user provided
    For i As Integer = 0 To Deficiences.Count - 1
        'Find deficiency row to update by ID field
        For j As Integer = 0 To DT_New.Rows.Count - 1
            If DT_New.Rows(j)("DeficiencyID") = Deficiences(i).DeficiencyID Then
                DT_New.Rows(j)("Status") = Deficiences(i).Status
                DT_New.Rows(j)("PatternOfCare") = Deficiences(i).PatternOfCare
                DT_New.Rows(j)("MarketNarrative") = Deficiences(i).MarketNarrative

                Continue For 'Next Deficiency
            End If
        Next
    Next

    'Set primary key so merge works correctly
    DT_Old.PrimaryKey = {DT_Old.Columns("DeficiencyID")}
    DT_New.PrimaryKey = {DT_New.Columns("DeficiencyID")}

    'Make sure all row status = unchanges
    DT_Old.AcceptChanges()

    'Merge user's changes to data in database
    DT_Old.Merge(DT_New)

    'Get rows with changes 
    DT_Changes = DT_Old.GetChanges()

    'Save changes to SQL
    For i As Integer = 0 To DT_Changes.Rows.Count - 1
        Cmd.CommandText = "UPDATE dbo.EHL_Deficiency_NewEHLTest " _
                        & "SET Status='" & DT_Changes.Rows(i)("Status") & "', Pattern_Of_Care='" & DT_Changes.Rows(i)("PatternOfCare") & "', Market_Narrative='" & DT_Changes.Rows(i)("PatternOfCare") & "' " _
                        & "WHERE DeficiencyID=" & DT_Changes.Rows(i)("DeficiencyID")

        Cmd.ExecuteNonQuery()
    Next

    If DT_Changes.Rows.Count < 1 Then Return False Else Return True
End Function
4

2 に答える 2