我正在开发一个包含两个部分的应用程序:
在这两个部分(项目)的开发过程中,许多功能是相同的,并且在两个不同的项目中开发它们是不合理的,因为开发时间是这样浪费的。
所以我想知道是否有任何方法来共享在两个项目中使用的代码/类?类似于在同一解决方案中创建项目或在Web或.exe格式下发布应用程序期间不会出现问题的任何其他方法。
答案 0 :(得分:1)
解决方案1:如果您要将API功能公开给多个应用程序您可以创建WebServices
并通过wsdl file.so公开它们,您可以从任何应用程序中使用这些服务
试试这个Web Services
解决方案2:
您可以创建一个生成ClassLibrary
文件的.dll
项目,可以从任何其他应用程序使用这些文件来访问API函数。
按照以下步骤创建包含常用功能(API)的库项目:
第1步:创建一个名为ClassLibrary
的新MyLibraryProject
项目(您可以指定任何名称),如下所示:
第2步:创建常用的库函数,如下所示:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace MyLibraryProject
{
public class MathLibraryClass
{
public int num1 { get; set; }
public int num2 { get; set; }
public int Sum(int n1,int n2)
{
num1 = n1;
num2 = n2;
return num1 + num2;
}
}
}
第3步:现在build
项目获取项目文件夹中的MyLibraryProject.dll
文件。
第4步:现在转到包含dll文件的项目文件夹。该路径是deubug文件夹或Release文件夹,基于您的Build Output Path
。
注意:我认为您的Build POutput Path是Release
文件夹
第5步:现在转到发布文件夹路径:
ProjectFolder->MyLibraryProject->MyLibraryProject->bin->Release
第6步:现在该文件夹包含如下所示的dll文件:
第7步:现在dll文件已成功生成,因此您可以将此dll文件作为对任何项目的引用添加,以使用这些常见的api函数。
第8步现在创建一个项目(这里是我正在创建控制台应用程序的示例),它消耗了dll中生成的常用函数。
第9步:现在按以下步骤添加您的dll文件作为参考:
右键单击新创建的项目。
选择References
选择Add Reference...
从Reference Manager窗口中选择Browse选项,如下所示:
现在选择所需的dll,如下所示:
步骤10:现在通过using
语句
using MyLibraryProject;
步骤11:现在在控制台应用程序中编写以下代码以使用库函数
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using MyLibraryProject;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
MathLibraryClass myclass = new MathLibraryClass();
int sum = myclass.Sum(12, 4);
Console.WriteLine("sum is {0}", sum);
}
}
}
第12步:现在您可以看到以下输出:
答案 1 :(得分:0)
是的 - 只需将公共代码放入类库(dll)即可。这正是类库的用途 - 用于在项目之间共享代码。
确保将类库定位到与表单项目和ASP.NET项目兼容的.Net框架。