是否可以导入类文件而不将其转换为c#中的dll?

是否可以导入类文件而不将其转换为c#中的dll?,c#,class,C#,Class,在我的程序中有很多变量和方法,我想在其他类文件中分离它们。但随着程序的发展,方法和功能可能会发生变化 我在网上搜索过,但一般来说,很多人都在寻找dll文件。如果不创建dll文件,我如何安排代码并将其拆分为小类文件?是的,只需将其拆分为新类中的单独文件,但仍在同一项目中。你正在做的事情的术语叫做。有一些工具使其更容易操作,也有一些工具添加了更多功能使其更容易操作 但归根结底,它只是在同一个项目中创建新类,并引用从中提取代码的新类。是的,只需将其拆分到新类中的单独文件中,但仍在同一个项目中。你正在做

在我的程序中有很多变量和方法,我想在其他类文件中分离它们。但随着程序的发展,方法和功能可能会发生变化


我在网上搜索过,但一般来说,很多人都在寻找dll文件。如果不创建dll文件,我如何安排代码并将其拆分为小类文件?

是的,只需将其拆分为新类中的单独文件,但仍在同一项目中。你正在做的事情的术语叫做。有一些工具使其更容易操作,也有一些工具添加了更多功能使其更容易操作


但归根结底,它只是在同一个项目中创建新类,并引用从中提取代码的新类。

是的,只需将其拆分到新类中的单独文件中,但仍在同一个项目中。你正在做的事情的术语叫做。有一些工具使其更容易操作,也有一些工具添加了更多功能使其更容易操作


但归根结底,它只是在同一个项目中创建新类,并引用从中提取代码的新类。

您可以将文件夹添加到解决方案中。默认情况下,类是名称空间提供程序,因此此文件夹中的类具有不同的名称空间

例如,如果您的默认名称空间是MyNameSpace,并且您创建了一个名为Entity的文件夹,那么该文件夹中的所有类都具有名称空间MyNameSpace.Entity


并且项目中的所有项都被编译为一个dll或exe

您可以将文件夹添加到解决方案中。默认情况下,类是名称空间提供程序,因此此文件夹中的类具有不同的名称空间

例如,如果您的默认名称空间是MyNameSpace,并且您创建了一个名为Entity的文件夹,那么该文件夹中的所有类都具有名称空间MyNameSpace.Entity


一个项目中的所有项目都被编译成一个dll或exe,只需向项目中添加更多的类,并将数据和行为(方法)放入适当的类中即可。该项目仍将构建到单个exe或dll中


通常,最好在同一个解决方案下添加第二个项目,称之为“CommonLib”或类似的东西。然后将其添加为对主应用程序的引用,并设置项目,以便应用程序的生成取决于库的生成。在要使用这些对象的地方,为公共库添加using语句。这对于大型或企业应用程序来说无疑是更好的选择。如果所有东西都构建到一个单独的exe中,而这个exe不是一个选项,那么很有可能在以后的某个地方您会希望重用一些代码。

只需向项目中添加更多的类,并将数据和行为(方法)放入适当的类中即可。该项目仍将构建到单个exe或dll中


通常,最好在同一个解决方案下添加第二个项目,称之为“CommonLib”或类似的东西。然后将其添加为对主应用程序的引用,并设置项目,以便应用程序的生成取决于库的生成。在要使用这些对象的地方,为公共库添加using语句。这对于大型或企业应用程序来说无疑是更好的选择。如果所有内容都构建到一个单独的exe中,而这个exe不是一个选项,那么很有可能在将来的某个地方您会希望重用其中的一些代码。

只需将其拆分到名称空间如果您将类文件添加到项目中,它仍然会在可执行文件中,如果你在项目中添加一个类文件,它仍然会在可执行文件中,而不是你所说的另一个dllScott。假设我将calculate()方法移动到myExtraClass。在我的主类中,calculate()足够了吗?还是每次调用myExtraClass.calculate()都必须。最后添加一个类作为命名空间作业本身的引用?您需要调用
myExtraClass.calculate()
,但是我列出的一些工具会自动将
calculate()
的每个引用替换为
myExtraClass.calculate()
,并同时生成新的类和文件,这就是为什么我说有一些工具可以让它更容易实现。当我说添加一个类作为引用时,我的意思是添加一个
私有MyExtraClass MyExtraClass和构造函数中的
myExtraClass=new myExtraClass()
(或者它可能是一个静态类,这取决于您是否需要该类来保留状态)。非常友好和有用。谢谢你的回答和链接。我将从这里继续。斯科特,你说到点子上了。假设我将calculate()方法移动到myExtraClass。在我的主类中,calculate()足够了吗?还是每次调用myExtraClass.calculate()都必须。最后添加一个类作为命名空间作业本身的引用?您需要调用
myExtraClass.calculate()
,但是我列出的一些工具会自动将
calculate()
的每个引用替换为
myExtraClass.calculate()
,并同时生成新的类和文件,这就是为什么我说有一些工具可以让它更容易实现。当我说添加一个类作为引用时,我的意思是添加一个
私有MyExtraClass MyExtraClass和构造函数中的
myExtraClass=new myExtraClass()
(或者它可能是一个静态类,这取决于您是否需要该类来保留状态)。非常友好和有用。谢谢你的回答和链接。我将从这里继续。