这是一个基本问题,但我不知道如何设置这个类。我有一个c#代码文件太大了,所以我想开始把它分成更小的块。
所以我采用了3种方法,并把它放在这个名为事件的类中。
现在,如果我的 主要课程 需要这个新课程中的方法,我是否只是这样称呼它?
我确实试过这个,但它确实有效。但似乎我并没有真正通过这样做来节省任何空间。
IEnumerable<EngineSchema> thisWeeksParts =
Events.WeeklyPartsList(engineCat, startDay, endDay)
谢谢!
这是新课程:
public static class Events
{
public static IEnumerable<EngineSchema> WeeklyPartsList(IEnumerable<EngineClass> engineCategory, DateTime startDay,
DateTime endDay)
{
var EngineParts =
engineCategory.SelectMany(e => e.Pages)
.Where(c => c.StartDateTime >= startDay & c.EndDateTime <= endDay);
return EngineParts;
}
public static IEnumerable<EngineClass> ClassOfEngine(int EngineSpecGroupID)
{
return Repository.Query()
.Where(c => c.VehicleGroup.Any(cg => searchParts.Contains(EngineSpecGroupID)));
}
public static IEnumerable<EngineSchema> GetEngineList(int engineYear, DateTime startDate, DateTime endDate)
{
return WeeklyPartsList(ClassOfEngine(engineYear), startDate, endDate);
}
}
答案 0 :(得分:1)
如果我的主类需要这个新类中的方法,我只是这样称呼它吗? [...]
虽然&#34;纯&#34;静态语法工作正常,切换到扩展语法可能稍微方便一些:
public static IEnumerable<EngineSchema> WeeklyPartsList(this IEnumerable<EngineClass> engineCategory, DateTime startDay, DateTime endDay) ...
// ^^^^
现在您可以按如下方式调用您的方法:
IEnumerable<EngineSchema> thisWeeksParts = engineCat.WeeklyPartsList(startDay, endDay);
或
foreach (var part in Events.ClassOfEngine(123).WeeklyPartsList(startDay, endDay)) {
...
}
答案 1 :(得分:-3)
是的,这就是在静态类中调用静态方法的方法。如果代码文件的大小是您唯一关注的问题,那么我只需创建一个新文件并使用partial class