0

首先,免责声明我是 C# 新手。我正在尝试使wkflow_param同一 Visual Studio 解决方案中的另一个项目的值可用,然后传递wkflow_param给该另一个项目中的函数。当我运行与此代码相关的解释器并到达时"return wkflow_param",我将鼠标悬停在它上面并显示"wkflow_param = 'conceptual_manufacturing'(这是正确的值,我已在另一个程序中设置它)。

如果我切换到第二个项目并将鼠标悬停在GeneratePostProcessingScript(wkflow_param)它上面wkflow_param = 'conceptual_manufacturing',那么我知道那部分是正确的。但是,在我通过这一点并进入另一个项目之后,wkflow_param返回为 null - 我不确定为什么它会突然切换

public partial class Interpreter
{
    private string ManufacturingGeneration(MgaFCO currentobj)
    {
            foreach (var wf_item in tb.Children.WorkflowRefCollection)
            {
                string TB_child_item_name = wf_item.Name;
                var workflow_item = wf_item.ReferencedBy;
                foreach (var task_item in wf_item.Referred.Workflow.Children.TaskCollection)
                    {
                        string TaskName = task_item.Name;
                        string wkflow_param = (task_item.Attributes.Parameters).ToLower(); 

                        return wkflow_param;
                     }
             }
     }
}

另一个项目的结构是:

public partial class Interpreter : IMgaComponentEx
{
    public void InvokeEx(MgaProject project, 
                        MgaFCO currentobj, 
                        MgaFCOs selectedobjs, 
                        int param)
        {
            GeneratePostProcessingScript(wkflow_param);
        }
}

我已经删掉了很多代码,因为它有数百行,但我相信这是判断出了什么问题所需的所有信息。

4

1 回答 1

1

这个说法

返回 wkflow_param;

应该在结束之后

foreach(tb.Children.WorkflowRefCollection 中的 var wf_item)

于 2013-07-19T16:29:04.233 回答