Can't open the MathNet Visual Studio .sln for contributing


(Tobias Glaubach) #1

Hi Everyone,

I have some problems opening the Visual Studio solution file. I tried with VS 2015 Professional as well as with VS 2017 Community. C# Development installed for both of them, but the opening process fails due to:

VS 2015 professional:
error : The default XML namespace of the project must be the MSBuild XML namespace. If the project is authored in the MSBuild 2003 format, please add xmlns=“http://schemas.microsoft.com/developer/msbuild/2003” to the element. If the project has been authored in the old 1.0 or 1.2 format, please convert it to MSBuild 2003 format.

VS 2017 community:
error : The SDK ‘Microsoft.NET.Sdk’ specified could not be found.

While I don’t necessary need a working project in VS to implement the features I want to implement, it is very inconvenient, to not be able to have the project in a working IDE.

Can anyone give me any hints, on what to do to open the project? Thanks.

Tobi


(Christoph Rüegg) #2

Maybe you do not have the .Net Core SDK installed yet? I expect this to be installed out of the box with VS 2017 though, but just to be sure?

Also, you may need to restore packages first, e.g. by running restore.cmd from the repository root.

Thanks,
Christoph


(Tobias Glaubach) #3

Hi,
thanks for the help, for some reason I hadn’t had the Core package installed. Unfortunatelly installing it did not resolve the errors. :thinking:

I ran the restore command (before I first tried, as well as after the .NET Core Installation) and it did not make a difference. Also compiling using msbuild fails due to the same

The SDK ‘Microsoft.NET.Sdk’ specified could not be found

error.

Anyone any further ideas?


(Christoph Rüegg) #4

Maybe some of the hints in https://github.com/Microsoft/msbuild/issues/2532 help?


(Christoph Rüegg) #5

Just curious, does build.cmd work?


(Tobias Glaubach) #6

Hi,
thanks! Explicidly installing the .NET Core toolkit within VS2017 solved the issue!

Now I can open the Project build and test it.
build.cmd in principle looks good, but there is a failing test due to culture de-DE… Thats not a problem though, since the test is not for any class I touched and just related to the german “,” as decimal indicator.

Thanks a lot for the help. Pull Request for the first features will be send in a few hours :slight_smile:


(Christoph Rüegg) #7

Great, thanks for the update!

Do you rmember which tests failed due to the system culture? We should fix that.


(Tobias Glaubach) #8

Thats the error:

1) Failed : MathNet.Numerics.UnitTests.ComplexTests.Complex32TextHandlingTest.CanFormatComplexToStringWithCulture("de-DE","1,1")
  String lengths are both 8. Strings differ at index 2.
  Expected: "(1,1, 0)"
  But was:  "(1.1, 0)"
  -------------^
   at MathNet.Numerics.UnitTests.ComplexTests.Complex32TextHandlingTest.CanFormatComplexToStringWithCulture(String cultureName, String number) in C:\Users\#####\mathnet-numerics\src\Numerics.Tests\ComplexTests\Complex32Test.TextHandling.cs:line 96

Thats my System CurrentCulture:

Thread.CurrentThread.CurrentCulture
[de-DE]

Thats my NumberFormant:

Thread.CurrentThread.CurrentCulture.NumberFormat
NumberFormatInfo { CurrencyDecimalDigits=2, CurrencyDecimalSeparator=",", CurrencyGroupSeparator=".", CurrencyGroupSizes=int[1] { 3 }, CurrencyNegativePattern=8, CurrencyPositivePattern=3, CurrencySymbol="€", DigitSubstitution=None, IsReadOnly=true, NaNSymbol="NaN", NativeDigits=string[10] { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9" }, NegativeInfinitySymbol="-∞", NegativeSign="-", NumberDecimalDigits=2, NumberDecimalSeparator=".", NumberGroupSeparator=" ", NumberGroupSizes=int[1] { 3 }, NumberNegativePattern=1, PercentDecimalDigits=2, PercentDecimalSeparator=".", PercentGroupSeparator=" ", PercentGroupSizes=int[1] { 3 }, PercentNegativePattern=0, PercentPositivePattern=0, PercentSymbol="%", PerMilleSymbol="‰", PositiveInfinitySymbol="∞", PositiveSign="+" }

(Tobias Glaubach) #9

Generated an issue in github for this: https://github.com/mathnet/mathnet-numerics/issues/586