It looks like Visual Studio 2017 switched its online reference documentation from .Net Framework to .Net Core: every time I hit the F1 key, I get sent on .Net Core documentation for the type/method on which the caret was.
Very well if I were in a .Net .Core project, but it does it too on .Net Framework 4.6.1 projects. And on this .Net Core help, there is no Show other versions drop down list. (Which is understandable, that is not really a newer version of .Net Framework 4.x.)
This renders this key almost useless to me. I end up googling the type / method for getting the MSDN .Net Framework 4.x documentation. (Which is currently more complete for subjects existing in both, compare this and this.)
Is there any way to get the F1 key to open from Visual Studio 2017 the .Net Framework 4.x documentation for the type/method on which the caret is?
I have found no settings for that neither in Help nor in Tools/Options.
This issue affects only online help. Technically Visual Studio does not seem to be blamed. It launches the browser on a MSDN website url with parameters specifying the framework and its version. But MSDN redirects regardless to .Net Core documentation. So it now appears to me as a MSDN website bug.
Example url on which Visual Studio 2017 sends:
http://msdn.microsoft.com/query/dev15.query?appId=Dev15IDEF1&l=EN-US&k=k(System.Runtime.Serialization.StreamingContext);k(TargetFrameworkMoniker-.NETFramework,Version%3Dv4.6.1);k(DevLang-csharp)&rd=true
Resulting MSDN redirection: 301 => https://msdn... then 302 =>
https://learn.microsoft.com/en-us/dotnet/core/api/system.runtime.serialization.streamingcontext
While Visual Studio 2015 sends on:
http://msdn.microsoft.com/query/dev14.query?appId=Dev14IDEF1&l=EN-US&k=k(System.Runtime.Serialization.SerializationInfo);k(TargetFrameworkMoniker-.NETFramework,Version%3Dv4.6.1);k(DevLang-csharp)&rd=true
Which only redirects to the https version of the url, then serves the page.
Now this has changed.
As already stated in my question edit, that is more a documentation web site trouble than a Visual Studio trouble.
Moreover, the learn.microsoft.com web site has now changed its redirection. For the provided example, it now gets redirected to (no more core in the path):
https://learn.microsoft.com/en-us/dotnet/api/system.runtime.serialization.streamingcontext
Which redirects further to:
https://learn.microsoft.com/en-us/dotnet/api/system.runtime.serialization.streamingcontext?view=netframework-4.7
Well, still not the asked framework (4.7 instead of 4.6.1), but way better than landing on .Net Core documentation instead of .Net Framework.
It also looks as complete as msdn documentation, though not giving the option to see documentation for versions prior to 4.5.
And indeed in my few tests, changing the version does not seem to reload the page, it seems a bit cosmetic for now... In fact, that is the Core reference documentation which is now gone!
So that move from msdn to docs looks like a bit premature, the learn.microsoft.com site seems to be still a "work in progress" site.
Anyway, it does not look to me there is anything to do on Visual Studio 2017 side. Just wait for the new documentation site to get finished.
Related
I've inherited an old project which uses Devexpress 8.2.4 - so i went and installed an appropriate DXperience Subscription v8.2.4. Now, when I try to open the designer through Visual Studio 2019, I get a:
"This method explicitly uses CM policy, which has been obsoleted by the .NET Framework. In order to enable CAS policy for compatibility reasons, please use the NetFx40/LegacySecurtyPolicy configuration switch. Please see http://go.microsoft.com/fwlink/?LinkID=155570 for more information."
Then I tried to open the project in VS 2010, and upon attempt at opening the designer, same CAS policy error happens.
After editing the VS2010 DevEnv configuration file (and respective config file for VS 2019), as Thomas suggested in his answer here, my Visual Studio 2019 just started crashing during start, and my Visual Studio 2010 successfully started but it then crashed upon trying to select the designer object.
Yes, I'm trying to get this designer for Devexpress 8.2 to run in either IDE - I just need to get it to work so I can hopefully add a QR Code(is this even possible in v8.2.4???).
I just don't know how to access designer to actually graphically update the report. I did some Devexpress projects myself but using v19 and newer, but I'm having trouble now, opening this designer for old Devexpress 8.21.
Any help would be appreciated as this HAS to be done by tomorrow.
Also, if v8.2.4 doesn't support QR Code (an XRBarCode object), what would be an alternative for adding that QR Code functionality? Would I have to upgrade to newer versions - would that break something?
Thanks!
I created a new ASP.NET Core MVC project with Visual Studio 2019, using the built in default template. I simply ran the project by clicking the green 'play' arrow where it says "IIS Express" (or by pressing F5). I haven't modified anything, yet when my browser opens up (in this case, Microsoft Edge) I get this:
Can’t connect securely to this page
This might be because the site uses outdated or unsafe TLS security settings. If this keeps happening, try contacting the website’s owner.
Your TLS security settings aren’t set to the defaults, which could also be causing this error.
I've opened a 'ticket' with Microsoft, but haven't heard anything yet. It may be that there is an issue with my IIS Express installation, but I'm not sure how to figure that out. I normally prefer to run my ASP.NET MVC local development from my local IIS, but it seems that IIS Express is the default way for Core MVC.
I modified my install of Visual Studio 2019 by removing all the web (ASP.NET) components, and then modified it again by adding them. After this, the default ASP.NET Core project does indeed work and debug with IIS Express.
I don't know how my install became corrupted, but it must have been from one of the numerous Visual Studio updates that seem to be released every few days.
This is embarrassing -- I've been programming .NET for many years and despite following the MSDN instructions for debugging the .NET sources, I've never been able to get it to work.
When I attempt to step into some Framework code (the c'tor for StringBuilder, for example), the debugger just skips right over, onto the next statement. I can't step into any framework code.
I'm using VS 2017, Framework v4.7.
Below are the debugging options.
Go to Symbols and add this URL http://referencesource.microsoft.com/symbols and a local cache path.
Please see:
https://blogs.msdn.microsoft.com/sburke/2008/01/16/configuring-visual-studio-to-debug-net-framework-source-code/
Other community members asked the simliar issue about debugging the .NET 4.6 here:
How do I debug .NET 4.6 framework source code in Visual Studio 2017?
Update:
It really has this issue from old VS version to VS2017, anyway, since we could repro this issue now, if possible, like Leo's suggestion, you could vote and add your comment here:
https://developercommunity.visualstudio.com/content/problem/101533/could-not-debug-net-framework-on-windws-10-machine.html
I have started an MVC 5 empty project and imported most of my stuff from another project to this one using most of this link. However I soon found out that I was having other kinds of troubles. I have since then downloaded ASP.NET and Web Tools 2013.1 for Visual Studio 2012 and installed it, and it only solved my problem partially.
As of right now my Razor syntax works, but I lost some really nice functionalities. Here's an example:
<li>
Orders
</li>
Today's date: #System.DateTime.Now
So when I type the #System.DateTime.Now line, the intellisence does work and offers the good options. However, if I type the Orders, as of before when writing the SearchOrders line the intellisence would provide the names of the actions included in the controller, however with MVC 5 and Visual Studio 2012 it is no more the case.
So if I type a missing action the support will not anymore warn me that the action is missing, nor will it offer me to create the action in my controller, and so on. In the same way, if I hit F12 on a View() line, Visual Studio 2012 will open the metadata class instead of showing the .cshtml file.
Is there something missing to gain back those functionalities? I've tried with an MVC 4 Web Application framework and things were working fine.
EDIT after user Erik pointed out that it was related to Resharper's code completion and other features, I am now searching as to why Resharper v 7.1.x does not seem to be able to deal with MVC 5 and its features.
As Erik Funkenbush (see comments on my main post) mentioned, the data lacking was actually part of Resharper's behavior and was not related, as I thought, to Visual Studio.
The main question was why Resharper 7.1.x did not seem to be able to cope with MVC 5 - Razor 3. I have not found the answer to that question, but I have installed Resharper 8 and all those lost functionality are back.
So if you ever stumble upon this problem, try an updated version of Resharper, it might be your solution.
Sometimes, when I press F1 in Visual Studio Code Editor, it opens browser with MSDN page for .NET Micro Framework. My projects are using .NET Framework 4.5 and there is no trace of Micro Framework in them.
For example pressing F1 over MulticastDelegate in my code editor opens this link instead of this link.
Anybody has the same issues?
UPDATE:
As Jeff Braaten suggested, I checked Debug help context and it seems fine. There is no difference (except the keyword) between context for Action and MulticastDelegate, for example.
And the same tells generated URL
For Action:
http://msdn.microsoft.com/query/dev11.query?appId=Dev11IDEF1
&l=EN-US&k=k(System.Action);
k(TargetFrameworkMoniker-.NETFramework,Version%3Dv4.5);
k(DevLang-csharp)&rd=true
For MulticastDelegate:
http://msdn.microsoft.com/query/dev11.query?appId=Dev11IDEF1
&l=EN-US&k=k(System.MulticastDelegate);
k(TargetFrameworkMoniker-.NETFramework,Version%3Dv4.5);
k(DevLang-csharp)&rd=true
So, most likely, it's not how VS generates request, it's how MSDN search engine interprets it.
This is a known issue with F1 and Visual Studio 2012. We are working on it, and there is no workaround at this time. For now, you'll need to use search to find the correct topic. Robin Reynolds-Haertle, Documentation Manager
It seems that Visual Studio is incorrectly building the Version key-value pair with a = instead of -, which then gets converted to %3D when the address is URL encoded.
If you replace the %3D in this section of the URL
k(TargetFrameworkMoniker-.NETFramework,Version%3Dv4.5);
with a -, you get the correct .NET Framework 4.5 MSDN page.
So, the correct address for MulticastDelegate would be:
http://msdn.microsoft.com/query/dev11.query?appId=Dev11IDEF1
&l=EN-US&k=k(System.MulticastDelegate);
k(TargetFrameworkMoniker-.NETFramework,Version-v4.5);
k(DevLang-csharp)&rd=true
I know this has been a long-standing issue with F1 and Visual Studio, but this has been finally fixed. So now, when you press F1 in Visual Studio, MSDN should open the right topic for you.