C# で一般的なタスクのクラスを持つ dll を使用します。そのdllには、データベース内のデータ行がID、Message、Operation Resultなどの属性を持って正しく挿入または更新されたかどうかを確認するために使用するclResultadoOperacionBDというクラスがあります。
属性は次のとおりです。
/// <summary>
/// Id Registro tipo entero
/// </summary>
public int Id32 { get { return _id_32; } }
/// <summary>
/// Id Registro tipo Long
/// </summary>
public long Id64 { get { return _id_64; } }
/// <summary>
/// Bool que indica si la operación es exitosa o no
/// </summary>
public bool Resultado { get { return _resultado; } }
/// <summary>
/// Indica el mensaje del resultado de una operación
/// </summary>
public string Mensaje { get { return _mensaje; } }
私はこのクラスを数回使用しましたが、問題ありません。
この dll を要件として使用して、C# でクラス ライブラリを作成しました。
次に、VB.net で Silverlight プロジェクトを作成し、DB と通信するために、Web プロジェクトで wcf を使用します。
Imports System.ServiceModel
Imports System.ServiceModel.Activation
Imports ClasesBase
Imports Entities
<ServiceContract(Namespace:="")>
<SilverLightFaultBehavior()>
<AspNetCompatibilityRequirements(RequirementsMode:=AspNetCompatibilityRequirementsMode.Allowed)>
Public Class wcf_comentario
<OperationContract()>
Public Function InsertaComentario(ByVal nombre As String, comentario As String, correo As String) As clResultadoOperacionBD
Using c As Comentario = New Comentario With {.Id = 0, .Nombre = nombre, .Comentary = comentario, .Correo = correo}
Return Repositories.ComentarioRepo.InsertaComentario(c)
End Using
End Function
End Class
その後、Silverlight プロジェクトにサービス参照を追加しました。問題は、wcf の完了イベント引数でオブジェクト属性を使用できない場合、行がデータベースに正しく挿入されたと考えられることです。
Private Sub insercion_completed(ByVal sender As Object, ByVal e As Prueba.InsertaComentarioCompletedEventArgs) Handles comentario_wcf.InsertaComentarioCompleted
lblResultado.Text = e.Result.GetType().Name
indicador.IsBusy = False
txtComentario.Text = ""
txtCorreo.Text = ""
txtNombre.Text = ""
End Sub
インテリジェンスは GetType 属性のみを表示し、そのクラスの属性を使用する方法を知りたいです。
ありがとうございました!