LinqDataSourceUpdateEventArgs.OriginalObject Propriedade
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Obtém o objeto que contém os valores que foram originalmente recuperados da fonte de dados.
public:
property System::Object ^ OriginalObject { System::Object ^ get(); };
public object OriginalObject { get; }
member this.OriginalObject : obj
Public ReadOnly Property OriginalObject As Object
Valor da propriedade
Um objeto do tipo especificado na TableName propriedade que contém os dados recuperados da fonte de dados.
Exemplos
O exemplo a seguir mostra um manipulador de eventos para o Updating evento. O exemplo mostra como comparar propriedades da OriginalObject propriedade e da NewObject propriedade para determinar se o valor na Category
propriedade foi alterado. Nesse caso, a CategoryChanged
propriedade do objeto na NewObject propriedade é definida true
como .
protected void LinqDataSource_Updating(object sender, LinqDataSourceUpdateEventArgs e)
{
Product originalProduct = (Product)e.OriginalObject;
Product newProduct = (Product)e.NewObject;
if (originalProduct.Category != newProduct.Category)
{
newProduct.CategoryChanged = true;
}
}
Protected Sub LinqDataSource_Updating(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.LinqDataSourceUpdateEventArgs)
Dim originalProduct As Product
Dim newProduct As Product
originalProduct = CType(e.OriginalObject, Product)
newProduct = CType(e.NewObject, Product)
If (originalProduct.Category <> newProduct.Category) Then
newProduct.CategoryChanged = True
End If
End Sub
Comentários
Você pode usar a OriginalObject propriedade para verificar os valores originais em relação aos valores atuais na fonte de dados e cancelar a operação de atualização ou executar outra ação.
A OriginalObject propriedade contém valores apenas para as propriedades que são mantidas no estado de exibição na página da Web. Uma propriedade é mantida nestas circunstâncias:
Quando ele é exibido em um controle associado a dados.
Quando a ColumnAttribute.UpdateCheck propriedade do System.Data.Linq.Mapping.ColumnAttribute atributo é definida como
Always
ouWhenChanged
.
Se a UpdateCheck propriedade estiver definida Never
como e o valor não for exibido em um controle associado a dados, o valor não será armazenado na página da Web. Nesse caso, ele não pode ser atribuído à OriginalObject propriedade .