LINQPad 6 for .NET Core 3 - preview now available!
An early preview of LINQPad for .NET Core 3 Desktop is now available for download:
https://www.linqpad.net/LINQPad6.aspx
In addition to targeting .NET Core 3, there are a bunch of new features:
https://www.linqpad.net/LINQPad6.aspx
In addition to targeting .NET Core 3, there are a bunch of new features:
- You can now add references to other .linq files, via the the new #load directive.
- The extensibility model for writing custom data context drivers has been updated for LINQPad 6.
Creating a project is now as simple as running a LINQPad script, and publishing it is as simple as publishing a NuGet package. - When executing a selection in 'C# Program' mode, the selected text can now call other methods in the query.
- The 'Go to definition' shortcut (F12) now works for symbols defined in My Extensions (as well as #load-ed queries).
- Outlining now works in statements mode, too, if you have #regions or methods defined.
- If you hold down the control key anywhere in the editor, it will display the quick-info tooltip, as well as any errors or warnings on that line.
- If you type /// before a member, LINQPad will now expand it into a simple (one-line) XML summary. These summaries are picked up from #load-ed queries, as well as My Extensions.
- The back-end for the NuGet Package Manager has been re-written to be faster and more reliable. It now works directly from the local user cache,
and recognizes reference assemblies and native dependencies in line with .NET Core protocols.
When restoring packages, LINQPad 6 searches all enabled package sources. - Queries now automatically re-loaded when the file is changed externally.
- When calling file-based methods such as File.Open, the editor now offers autocompletion on the file path.
- There are new options available when calling Dump - to suppress column totals, control repeating headers, and specify a depth at which to initially collapse the results.
- When compiling your queries, LINQPad 6 preferences reference assemblies over runtime assemblies. If the reference assemblies for the current
.NET Core runtime version have not been installed, LINQPad will offer to download the appropriate NuGet package. - LINQPad 6 supports soft cancellation. By monitoring this.QueryCancelToken, your query can respond to the Cancel button, and
elect to end early without the underlying process being killed. - You can now connect to SQL CE databases without installing SQL CE. LINQPad will automatically download the NuGet package as required.
Comments
Wondering why .NET Core 3.0-preview5-27626-15 is recommanded while preview6 is required to run LINQPad 6?
This shouldn't make much difference because it's only reference assemblies. Your queries will still target the preview6 runtime assemblies.
or it just license problem?
it can show in linqpad 5 free
1. Menu shortcut, press Alt+F, then press "X", will(should) close LINQPad, but it seems not functional:
2. I like the LINQPad5's right click syntax and press "G" to Go to Definition(instead of press F12), but the "G" shortcut seems missing in LINQPad6.
3. I have tons of LINQPad query, by clicking the Go to..., I can quickly navigate to the .linq file I searched. I'd like to have a shortcut to search quickly like "Alt+T" for "Control+Shift+P", so I can leave my mouse and have fun with the keyboard
https://github.com/dotnet/winforms/issues/1021
The shortcut for 'Go to' is the same as in Visual studio (Ctrl+comma).
(Once the 'Go to' dialog is open, you'll notice a couple of new shortcuts - click the down-arrow next to the OK button to see them.)
1. Open a .linq file with "#LINQPad optimize+" with comment will always break the lexer(code highlight):
Note:
* Comment is required to reproduce this issue, without comment everything is fine
* Open a existing file is required, when I just typing the code, I cannot reproduce the issue.
2. When I open a new LINQPad6 process and then first time trying to open Nuget package manager UI, will always show a error message:
The Chinese text is: 对类型"System.Windows.Controls.TextBox"的构造函数执行符合指定的绑定约束的调用时引发了异常。(in case you can translate it in Google
After that, close the error dialog and open the nuget package manager UI again, everything is fine.
The TextBox to search local NuGet package and TextBox in search global NuGet package, cannot use any shortcut, any shortcut I mean I cannot Cut(Ctrl+X)/Copy(Ctrl+C)/Paste(Ctrl+V), cannot select All(Ctrl+A), cannot click Backspace, Cannot click Del. The only thing I can(thanksfully ), is typing.
And When I select all(by mouse) and right click on the text, The Cut/Copy/Paste option are all grayed out:
I guess this issue maybe related to previous error for XamlParseException.
It would be very nice to see basic snippets of .net core , just like in other linqpad versions.
wazzamatazz - thanks for reporting. There may not be a fix for this until MS release a full .NET Core NuGet stack. Right now, NuGet.PackageManagement is .NET Framework only and so LINQPad 6 must use an unofficial netstandard port which hasn't been updated since December last year.
I'll include a workaround in tomorrow's build which will reset the culture to US if you're running netcore 3 preview6.
Tomorrow's build will also include a fix for the syntax parsing issue.
Maybe .Net core samples ?
"C# 7 in a Nutshell" will be replaced with "C# 8 in a Nutshell" in time.
With the third-party downloadable samples, a few may have .NET Framework dependencies - it's up to the author to update these to netcore 3.
Thanks for the help. Also, absolutely fantastic product!
-Scott
LINQPad:
Actual (via NuGet Package Explorer):
As a result, I have to manually add the dependencies myself before I can run a query (obviously not a big hardship).