如何使用 类 重构 C# 代码阶段?
How can I refactor c# code stage using classes?
所以我在 BP 的代码阶段中有一些代码并且它有效。
问题是它笨重、长而且脆弱。我想知道如何在 BP 中使用 class/es 将此代码重构为更简洁和可扩展的代码,而不必编写外部 class-library 然后引用它(这是在我的环境中不太容易做到。
我知道可以使用“全局代码”选项卡编写方法,但我可以在那里写一个摘要 class 吗? sub-classes 会去哪里?接口怎么样?抱歉,如果这太基础了,我找不到之前的任何内容来指导我。感谢您的帮助或指点,谢谢。
该代码是一个基本的决策阶段,它使用来自数据项 "Main_Segment" 的输入,并且
使用局部(私有)变量"parcel_label"和"found"将一些静态值输出到BP数据项"Parcel_Label"和"Found"中。
(BP 数据项)找到 =(局部变量)找到
(BP 数据项)Parcel_Label =(局部变量)parcel_label
(BP 数据项)Main_Segment =(局部变量)segdescript
string segdescript = Main_Segment;
found = false;
parcel_label = "";
if (segdescript.Contains("Segment 001") || segdescript.Contains("Segment 101"))
{
found = true; //if first condition is met, assign value of true to "found".
if (found = true) //as "found" is now true, the assignment below is carried out.
{
parcel_label = "Parcel0000";
}
}
//and again...
if (segdescript.Contains("Segment 002") || segdescript.Contains("Segment 202"))
{
found = true;
if (found = true)
{
parcel_label = "Parcel1111";
}
}
//and again another 97 times...zzz
好的,我明白了:所以可以编写抽象类和任意数量的子类和接口,但它们都必须在初始化页面的“全局代码”选项卡中彼此重叠书写。然后这些子 类 中的任何一个都可以从整个项目的各个代码阶段实例化。
所以我在 BP 的代码阶段中有一些代码并且它有效。
问题是它笨重、长而且脆弱。我想知道如何在 BP 中使用 class/es 将此代码重构为更简洁和可扩展的代码,而不必编写外部 class-library 然后引用它(这是在我的环境中不太容易做到。
我知道可以使用“全局代码”选项卡编写方法,但我可以在那里写一个摘要 class 吗? sub-classes 会去哪里?接口怎么样?抱歉,如果这太基础了,我找不到之前的任何内容来指导我。感谢您的帮助或指点,谢谢。
该代码是一个基本的决策阶段,它使用来自数据项 "Main_Segment" 的输入,并且 使用局部(私有)变量"parcel_label"和"found"将一些静态值输出到BP数据项"Parcel_Label"和"Found"中。
(BP 数据项)找到 =(局部变量)找到
(BP 数据项)Parcel_Label =(局部变量)parcel_label
(BP 数据项)Main_Segment =(局部变量)segdescript
string segdescript = Main_Segment;
found = false;
parcel_label = "";
if (segdescript.Contains("Segment 001") || segdescript.Contains("Segment 101"))
{
found = true; //if first condition is met, assign value of true to "found".
if (found = true) //as "found" is now true, the assignment below is carried out.
{
parcel_label = "Parcel0000";
}
}
//and again...
if (segdescript.Contains("Segment 002") || segdescript.Contains("Segment 202"))
{
found = true;
if (found = true)
{
parcel_label = "Parcel1111";
}
}
//and again another 97 times...zzz
好的,我明白了:所以可以编写抽象类和任意数量的子类和接口,但它们都必须在初始化页面的“全局代码”选项卡中彼此重叠书写。然后这些子 类 中的任何一个都可以从整个项目的各个代码阶段实例化。