IsValidStateTransitionRequest 类

应用到: CRM 2015 on-prem, CRM Online

Contains the data that is needed to validate the state transition.

命名空间: Microsoft.Crm.Sdk.Messages
程序集: Microsoft.Crm.Sdk.Proxy (在 Microsoft.Crm.Sdk.Proxy.dll 中)

语法

声明
<DataContractAttribute(Namespace:="https://schemas.microsoft.com/crm/2011/Contracts")> _
Public NotInheritable Class IsValidStateTransitionRequest
    Inherits OrganizationRequest
[DataContractAttribute(Namespace="https://schemas.microsoft.com/crm/2011/Contracts")] 
public sealed class IsValidStateTransitionRequest : OrganizationRequest

示例

The following example shows how to use this message. For this sample to work correctly, you must be connected to the server to get an IOrganizationService interface. For the complete sample, see the link later in this topic.

// Create an EntityReference to represent an open case
EntityReference caseReference = new EntityReference()
{
    LogicalName = Incident.EntityLogicalName,
    Id = _caseIncidentId
};

IsValidStateTransitionRequest checkState = 
    new IsValidStateTransitionRequest();

// Set the transition request to an open case
checkState.Entity = caseReference;

// Check to see if a new state of "resolved" and 
// a new status of "problem solved" are valid
checkState.NewState = IncidentState.Resolved.ToString();
checkState.NewStatus = (int)incident_statuscode.ProblemSolved;

// Execute the request
IsValidStateTransitionResponse checkStateResponse = 
    (IsValidStateTransitionResponse)_serviceProxy.Execute(checkState);

备注

Message Availability

无论调用方是连接到服务器还是处于脱机状态,此消息都可正常工作。

Usage

Pass an instance of this class to the Execute method, which returns an instance of the IsValidStateTransitionResponse class.

Privileges and Access Rights

To perform this action, the caller must have privileges on the specified entity in the Entity property and access rights on the specified record in the Entity property. For a complete list of the required privileges, see IsValidStateTransition Privileges.

Notes for Callers

If an incident (case) or opportunity is already closed or canceled, or if an incident (case) has open activities, an exception is thrown.

Supported Entities

下表显示支持此消息的默认实体。对于此消息的列出实体,如果调用方必须连接到服务器,则“可用性”列显示“Server”;如果调用方可连接到服务器也可以从服务器断开连接,则显示“Both”。

Entity Availability

Incident

2 (Both)

msdyn_PostAlbum

2 (Both)

msdyn_PostConfig

2 (Both)

msdyn_PostRuleConfig

2 (Both)

msdyn_wallsavedquery

2 (Both)

msdyn_wallsavedqueryusersettings

2 (Both)

Opportunity

2 (Both)

继承层次结构

System.Object
   Microsoft.Xrm.Sdk.OrganizationRequest
    Microsoft.Crm.Sdk.Messages.IsValidStateTransitionRequest

线程安全性

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

平台

开发平台

Windows Vista、Windows Server 2003 和

目标平台

Windows Vista,Windows XP

Change History

另请参阅

参考

IsValidStateTransitionRequest 成员
Microsoft.Crm.Sdk.Messages 命名空间
IsValidStateTransitionResponse

其他资源

Opportunity Entities
Incident (Case) Entities
IsValidStateTransition Privileges
Sample: Validate Record State and Set State of the Record
How Role-Based Security Can Be Used to Control Access to Entities in CRM
How Instance-Based Security Can Be Used to Control Access to Entity Instances (Records) in CRM

Send comments about this topic to Microsoft.
© 2014 Microsoft Corporation. All rights reserved.