-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
Fixed templates so C++ apps can consume C# native modules #5851
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you, this is great!
thanks @jonthysell . It looks like we are relying on the dotnet native packages from the SDK instead of nuget, so we just need to make sure that as VS updates itself, that we also keep this updated. |
638fa37
to
35f3fb5
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This one was marked as blocking 0.63 from being released, so I'm going to mark as approved to go into 0.63. @kmelmon @acoates-ms @asklar let me know if you have any thoughts. |
…5851) Right now C++/WinRT apps have a hard time consuming C# WinRT libraries from source. We fixed this in our SampleAppCpp in order to load SampleLibraryCS, but those fixes were not put into the template for the benefit of all apps. This PR moves the fix into new `CppAppConsumeCSharpModule.(props|targets)` files. Since the fix involves importing a ton of other props/targets, and we don't want to risk breaking existing C++ apps who have no need of consuming C#-based native modules, the changes are behind a new property `ConsumeCSharpModules`. So if you have a C++/WinRT RNW app (the default) and need to consume C# native module, you can set `<ConsumeCSharpModules>true</ConsumeCSharpModules>` in your app project. This PR also fixes up the template solution files to include the projects they were missing. Closes microsoft#5825 Closes microsoft#4557
) This change backports #5851 to 0.63 Original PR: Right now C++/WinRT apps have a hard time consuming C# WinRT libraries from source. We fixed this in our SampleAppCpp in order to load SampleLibraryCS, but those fixes were not put into the template for the benefit of all apps. This PR moves the fix into new `CppAppConsumeCSharpModule.(props|targets)` files. Since the fix involves importing a ton of other props/targets, and we don't want to risk breaking existing C++ apps who have no need of consuming C#-based native modules, the changes are behind a new property `ConsumeCSharpModules`. So if you have a C++/WinRT RNW app (the default) and need to consume C# native module, you can set `<ConsumeCSharpModules>true</ConsumeCSharpModules>` in your app project. This PR also fixes up the template solution files to include the projects they were missing. Closes #5825 Closes #4557
Right now C++/WinRT apps have a hard time consuming C# WinRT libraries from source. We fixed this in our SampleAppCpp in order to load SampleLibraryCS, but those fixes were not put into the template for the benefit of all apps.
This PR moves the fix into new
CppAppConsumeCSharpModule.(props|targets)
files. Since the fix involves importing a ton of other props/targets, and we don't want to risk breaking existing C++ apps who have no need of consuming C#-based native modules, the changes are behind a new propertyConsumeCSharpModules
.So if you have a C++/WinRT RNW app (the default) and need to consume C# native module, you can set
<ConsumeCSharpModules>true</ConsumeCSharpModules>
in your app project.This PR also fixes up the template solution files to include the projects they were missing.
Closes #5825
Closes #4557
Microsoft Reviewers: Open in CodeFlow