C# 如何使用if语句检查事件实体的状态代码?

C# 如何使用if语句检查事件实体的状态代码?,c#,dynamics-crm,dynamics-crm-online,dynamics-crm-365,C#,Dynamics Crm,Dynamics Crm Online,Dynamics Crm 365,如何检查事件实体的状态代码,如果状态代码为1或3,则执行if方法。statuscode是一个OptiStart值,因此我不确定如何在if语句中传递它 public void Execute(IServiceProvider serviceProvider) { ITracingService tracingService = (ITracingService)serviceProvider.GetService(typeof(ITracingService)); IPluginE

如何检查事件实体的状态代码,如果状态代码为1或3,则执行if方法。statuscode是一个OptiStart值,因此我不确定如何在if语句中传递它

public void Execute(IServiceProvider serviceProvider)
{
    ITracingService tracingService = (ITracingService)serviceProvider.GetService(typeof(ITracingService));
    IPluginExecutionContext context = (IPluginExecutionContext)serviceProvider.GetService(typeof(IPluginExecutionContext));

    IOrganizationServiceFactory factory =
        (IOrganizationServiceFactory)serviceProvider.GetService(typeof(IOrganizationServiceFactory));
    IOrganizationService service = factory.CreateOrganizationService(context.UserId);

    //create an entity
    Entity entity = (Entity)context.InputParameters["Target"];

    //after creating the entity, we need to retrieve the required entity: Incident

    //retrieve incident entity
    Incident detail = entity.ToEntity<Incident>();


  // var incident = service.Retrieve("incident", detail.IncidentId.Value, new Microsoft.Xrm.Sdk.Query.ColumnSet(true)).ToEntity<Incident>();


    if (detail.StatusCode== new OptionSetValue(1) || detail.StatusCode == new OptionSetValue(3))
    {
        if (sec != null)
        {
            ExecuteWorkflowRequest request = new ExecuteWorkflowRequest()
public void Execute(IServiceProvider服务提供者)
{
ITracingService tracingService=(ITracingService)serviceProvider.GetService(类型(ITracingService));
IPluginExecutionContext上下文=(IPluginExecutionContext)serviceProvider.GetService(类型为(IPluginExecutionContext));
组织服务工厂=
(IOOrganizationServiceFactory)服务提供者.GetService(类型为(IOOrganizationServiceFactory));
IOOrganizationService=factory.CreateOrganizationService(context.UserId);
//创建实体
实体=(实体)上下文。输入参数[“目标”];
//创建实体后,我们需要检索所需的实体:Incident
//检索事件实体
事件详细信息=实体。实体();
//var incident=service.Retrieve(“incident”,detail.IncidentId.Value,new Microsoft.Xrm.Sdk.Query.ColumnSet(true)).ToEntity();
if(detail.StatusCode==newoptionsetvalue(1)| | detail.StatusCode==newoptionsetvalue(3))
{
如果(秒!=null)
{
ExecuteWorkflowRequest请求=新的ExecuteWorkflowRequest()

选项SetValue是整数。这应该可以工作

int statusCode = detail.GetAttributeValue<OptionSetValue>("statuscode").Value;

if(statusCode == 1 || statusCode == 3)
{

}
int statusCode=detail.GetAttributeValue(“statusCode”).Value;
如果(状态代码==1 | |状态代码==3)
{
}
您可以执行以下操作:

OptionSetValue localTempVariable;

localTempVariable = new_myEntity.GetAttributeValue<OptionSetValue>("new_myOptionSetAttribute");
详情如下:

localTempVariable = new_myEntity.GetAttributeValue<OptionSetValue>("new_myOptionSetAttribute") == null ?