我正在创建一个新的VS2015 Web应用程序,但是有一个部分需要一些已存在于另一个系统中的报告。
另一个系统是一个VS2013解决方案,它有一个网站(不是网络应用程序)作为它的主要项目,还有许多类库。但是网站直接包含一堆做报告和其他事情的类,我宁愿使用它们而不是重新创建所有(非常复杂的)代码。
有没有办法从另一个项目或类库中引用网站中的类?这是我正在维护的一个相当大的旧应用程序,如果我不需要,我宁愿不尝试将所有功能提取到它自己的类库中。
如果这些类已经在一个单独的类库中,我可以很容易地引用它们,但不幸的是它们在网站上是正确的,我找不到任何关于能够链接到它的信息(大概是因为你可以“T)。
这是一个示例结构:
MySolution
MyNewClassLibrary
MyClass
{
MyReportFunction()
{
var x = new ReportClass(); // From website project
x.CreateReportFunction();
}
}
OldSolution
WebsiteProject
ReportClass
{
CreateReportFunction()
{
// All the code I'd like to access
]
}
这可能吗?或者我有很多重写要做?或者考虑将网站转换为网络应用程序是一个更好的主意?
答案 0 :(得分:2)
您可以将这些现有类作为链接类添加到解决方案中。
将现有项目添加到项目
您还可以阅读更多详情here。
答案 1 :(得分:0)
如果其他人正在寻找类似的东西,答案是否定的,这是不可能的。
我最终把所有的功能都放到了一个新的类库项目中,这个项目需要进行大量的测试才能确保我得到所有的小部件。
故事的道德 - 第一次正确构建软件,并将功能拉入可重用对象。不要用面向对象的语言进行过程式编程。