Comments (5)
I’m not sure that’s possible - at least not without dumping the XML to disk as a temporary project file and loading from that. Even without a tweaker, we still manipulate the XML in some cases before loading and I’d like to reserve the option of doing other transformations before load in the future if needed.
IIRC, Buildalyzer does try and tell MSBuild about the filename and location. Perhaps there’s a way (even if means using reflection or other dark magic) to populate whatever MSBuild needs to populate those properties. Or could we just set all of them ourself?
from buildalyzer.
@daveaglick You're right that Buildalyzer attempts to set the FullFilePath, and I suspect a re-evaluate after setting that may populate these properties, but that happens after the initial load. If the initial load requires these properties (ie. used in Imports), loading may fail.
from buildalyzer.
Ah, think I got it - so we’ve got to get those set during initial load and not via evaluation sometime later. I’d still like to find a way to do this via a stream instead of the file system - hopefully there’s way.
from buildalyzer.
@daveaglick I have created a pull request that should address this issue: #45, could you please take a look? The solution is taken from Roslyn MSBuildWorkspace and related classes and utilizes project creation through ProjectRootElement class.
from buildalyzer.
@jirikopecky Thanks! I took a quick glance at the PR the other day and it looked good. I'll take a closer look and merge it in hopefully next week. Also have a couple other things to get in (plus a new MSBuild API) so I'll probably do a release with these changes next week too.
from buildalyzer.
Related Issues (20)
- Support for .Net Standard 2.0 HOT 2
- `PublishSingleFile` breaks `IProjectAnalyzer.Build()` HOT 15
- Version number not available for packages added using GlobalPackageReference in Directory.Packages.props HOT 7
- Unsupported log file version HOT 8
- Cache dotnet info results per global.json file HOT 5
- Error when trying to read dotnet --info HOT 3
- multiple Buildalyzer.Tests unit tests are failing HOT 3
- Make working directory used by ProcessRunner configurable HOT 3
- [Discussion] Calling `GetCompilationAsync` on ASP.NET Framework project returns empty compilation HOT 3
- Help offered HOT 1
- Could not load file or assembly `NuGet.Frameworks` HOT 16
- Build/assembly reference not found errors due to random sorting of the projects in the Workspace when loading projects from solution file HOT 9
- Xml documentation is missing for imported symbols in Roslyn Projects HOT 3
- Looking For A New Maintainer HOT 4
- Sponsoring HOT 4
- Coding style, static code analysis, and versioning HOT 15
- Immutability HOT 3
- Targeting netstandard HOT 1
- Error running on macos-14-arm64 image
- Buildalyzer hangs if build does not start
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from buildalyzer.