我下载了一个c#项目,我想调试这个项目,看看算法实现是如何工作的。

该项目已经在一个文件夹,在这个文件夹内有-

.sln文件和 一个包含源文件和.csproj文件的文件夹。

我安装了Visual Studio并打开了主文件夹中的.sln文件。我成功地构建了项目,但是当我尝试调试项目时,我得到了这样的消息:

输出类型为Class Library的项目不能直接启动。为了调试此项目,请向此解决方案中添加一个引用库项目的可执行项目。将可执行项目设置为启动项目。

奇怪的是,我在任何地方都没有看到主函数。

我该怎么做才能解决这个问题呢?


当前回答

您已下载的项目将编译到dll程序集,并提供一组具有已实现功能的类。

你应该在你的解决方案中添加一个输出类型为控制台应用程序或Windows应用程序的新项目(VS添加项目向导将为你提供不同的项目模板)。

在新添加的项目中,您可以实现测试类库的逻辑。

您可以通过以下步骤查找和更改项目的输出类型:

在解决方案资源管理器->属性中右键单击项目。 在打开的带有属性的选项卡中选择应用程序,将会有带有输出类型标签的组合框。

其他回答

您已下载的项目将编译到dll程序集,并提供一组具有已实现功能的类。

你应该在你的解决方案中添加一个输出类型为控制台应用程序或Windows应用程序的新项目(VS添加项目向导将为你提供不同的项目模板)。

在新添加的项目中,您可以实现测试类库的逻辑。

您可以通过以下步骤查找和更改项目的输出类型:

在解决方案资源管理器->属性中右键单击项目。 在打开的带有属性的选项卡中选择应用程序,将会有带有输出类型标签的组合框。

在我的例子中,原因是解决方案中的一个项目没有加载。它不能正确加载的原因是其中一个文件的文件路径长度太长。删除这个长文件后,我可以重新加载项目,并构建解决方案。

奇怪的是,我在任何地方都没有看到主函数。

这正是你的问题所在。该项目仅仅创建了一个DLL。它没有可执行文件要运行。

您将需要添加第二个项目,这是一个引用其他项目的可执行文件,并调用其中的某些内容。

您可以右键单击类库项目,从下拉菜单中选择初始化交互式c#,这将加载您的项目上下文,您可以在交互式会话中工作。

上面提供的答案都没有帮助我解决这个错误,这是解决我的问题。

右键单击解决方案并选择“Properties”,在我的例子中是“Sintctech.Data”。 选择“应用程序”部分。 检查您选择的输出类型。如果是“Windows应用程序”,请将其更改为“控制台应用程序”。

重新构建后,问题应该会得到解决。