IgnoreAttribute 类

指定 DomainService 上的方法不是域操作。

命名空间: System.ServiceModel.DomainServices.Server
程序集: System.ServiceModel.DomainServices.Server(在 system.servicemodel.domainservices.server.dll 中)

用法

用法
Dim instance As IgnoreAttribute

语法

声明
<AttributeUsageAttribute(AttributeTargets.Method Or AttributeTargets.Property Or AttributeTargets.Field, AllowMultiple:=False, Inherited:=True)> _
Public NotInheritable Class IgnoreAttribute
    Inherits Attribute
[AttributeUsageAttribute(AttributeTargets.Method|AttributeTargets.Property|AttributeTargets.Field, AllowMultiple=false, Inherited=true)] 
public sealed class IgnoreAttribute : Attribute
[AttributeUsageAttribute(AttributeTargets::Method|AttributeTargets::Property|AttributeTargets::Field, AllowMultiple=false, Inherited=true)] 
public ref class IgnoreAttribute sealed : public Attribute
/** @attribute AttributeUsageAttribute(AttributeTargets.Method|AttributeTargets.Property|AttributeTargets.Field, AllowMultiple=false, Inherited=true) */ 
public final class IgnoreAttribute extends Attribute
AttributeUsageAttribute(AttributeTargets.Method|AttributeTargets.Property|AttributeTargets.Field, AllowMultiple=false, Inherited=true) 
public final class IgnoreAttribute extends Attribute

示例

下面的示例演示域服务中一个由域操作调用,但未公开为域操作的方法。

Public Sub InsertCustomer(ByVal customer As Customer)
    If (customer.SalesPerson = String.Empty) Then
        customer.SalesPerson = RetrieveSalesPersonForCompany(customer.CompanyName)
    End If

    If ((customer.EntityState = EntityState.Detached) _
                = False) Then
        Me.ObjectContext.ObjectStateManager.ChangeObjectState(customer, EntityState.Added)
    Else
        Me.ObjectContext.Customers.AddObject(customer)
    End If
End Sub

<Ignore()> _
Public Function RetrieveSalesPersonForCompany(ByVal companyname As String) As String
    Dim salesPersonToAssign As String = "unassigned"

    Dim customers As List(Of Customer)
    customers = GetCustomers().Where(Function(c) c.CompanyName = companyname).ToList()

    If (customers.Count > 0) Then
        salesPersonToAssign = customers.First().SalesPerson
    End If

    Return salesPersonToAssign
End Function
public void InsertCustomer(Customer customer)
{
    if (customer.SalesPerson == String.Empty)
    {
        customer.SalesPerson = RetrieveSalesPersonForCompany(customer.CompanyName);
    }

    if ((customer.EntityState != EntityState.Detached))
    {
        this.ObjectContext.ObjectStateManager.ChangeObjectState(customer, EntityState.Added);
    }
    else
    {
        this.ObjectContext.Customers.AddObject(customer);
    }
}

[Ignore]
public string RetrieveSalesPersonForCompany(string companyname)
{
    string salesPersonToAssign = "unassigned";

    List<Customer> customers = GetCustomers().Where(c => c.CompanyName == companyname).ToList();
    if (customers.Count > 0)
    {
        salesPersonToAssign = customers.First().SalesPerson;
    }

    return salesPersonToAssign;
}

备注

请使用 IgnoreAttribute 特性以确保域服务上的方法未公开为域操作。

继承层次结构

System.Object
   System.Attribute
    System.ServiceModel.DomainServices.Server.IgnoreAttribute

线程安全

此类型的任何公共静态(在 Visual Basic 中为 共享)成员都是线程安全的。不保证所有实例成员都是线程安全的。

平台

开发平台

Windows XP Home Edition, Windows XP Professional, Windows Server 2003 、Windows Server 2008 和 Windows 2000

目标平台

Change History

另请参见

参考

IgnoreAttribute 成员
System.ServiceModel.DomainServices.Server 命名空间