-
Notifications
You must be signed in to change notification settings - Fork 96
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rework solution management code to better support project types #162
Comments
Some notes from our chat. We need to drop XDocument AsXml();
void Save(XDocument project); from IProject. They don't make sense for ASP.Net 5 projects. We need the following solution types :-
and the following project types :-
Currently the server is started in either sln mode or aspnet5 (folder) mode. This isn't correct as they aren't exclusive. We need to be able to start the main solution from here https://github.com/aspnet/Entropy . This contains a number of kproj projects. On the DTH branch, we have partial support for loading the projects individually, but not as a combined solution. We also need to support what DTH calls "RawReferences" which are assemblies represented as a byte array. |
A single folder project is just a project, no? OmniSharp folder mode was only added as a quick way to get started with vnext projects, back when the references were just dlls inside the project folder. |
@nosami I think there's always a solution. That simplifies things and makes it so we don't have to special case anything. |
I've ended up taking a slightly different path. We either start off with an MSBuild solution or a folder based solution, but either of those could also contain a collection of AspNet5 projects ( found by scanning ) I'm not sure if there are any downsides to this way off thinking about things, but I can now load Entropy and KRuntime as solutions, with each project getting its own isolated references from DTH. Haven't had time to give it much testing, and RawReferences still don't work, but I think it shows that the idea could be sound. |
There are 4 different kinds of "solutions"
Within these solution, there can be various project types
Realistically, MSBuild based projects will always have a project file. ASP.NET 5 projects on the other hand don't require it. ASP.NET 5 project types can live in a .sln file side by side with MSBuild project types.
Given these new requirements we should do the following:
The text was updated successfully, but these errors were encountered: