去年,Scott Guthrie 表示 "如果你想要对执行的SQL进行绝对控制,你实际上可以覆盖LINQ to SQL使用的原始SQL",但我找不到描述可扩展性方法的文档.
我想修改以下LINQ to SQL查询:
using (NorthwindContext northwind = new NorthwindContext ()) {
var q = from row in northwind.Customers
let orderCount = row.Orders.Count ()
select new {
row.ContactName,
orderCount
};
}
这导致以下TSQL:
SELECT [t0].[ContactName], (
SELECT COUNT(*)
FROM [dbo].[Orders] AS [t1]
WHERE [t1].[CustomerID] = [t0].[CustomerID]
) AS [orderCount]
FROM [dbo].[Customers] AS [t0]
至:
using (NorthwindContext northwind = new NorthwindContext ()) {
var q = from row in northwind.Customers.With (
TableHint.NoLock, TableHint.Index (0))
let orderCount = … 在Actor项目中,该AssemblyVersionAttribute值用于更新ServiceManifest版本以及代码和配置版本.服务项目没有这种行为.
此更新版本还用于更新中ServiceManifestRef的ServiceManifestVersion引用ApplicationManifest.虽然ApplicationManifest是在每次构建修改,它不会出现内手动设置的版本服务项目ServiceManifest是在更新后的ApplicationManifest任一.
这是服务项目的计划或预期行为吗?
我正在运行Visual Studio 2015 RC,Service Fabric SDK的第一个预览版和NuGet包的4.0.95-preview1.
Register-ObjectEvent在必需参数InputObject中查找对象实例.对象的静态(共享)事件的语法是什么?
更新:更正TimeChanged的语法:
$systemEvents = [Microsoft.Win32.SystemEvents]
$timeChanged = Register-ObjectEvent -InputObject $systemEvents
-EventName 'TimeChanged' -Action { Write-Host "Time changed" }
Run Code Online (Sandbox Code Playgroud)
不幸的是,系统事件不会在PowerShell ISE中发出信号.以下是使用对象的staic事件的示例:
$networkInformation = [System.Net.NetworkInformation.NetworkChange];
$networkAddressChanged = Register-ObjectEvent -InputObject $networkInformation
-EventName 'NetworkAddressChanged'
-Action { Write-Host "NetworkAddressChanged event signaled" }
Run Code Online (Sandbox Code Playgroud) 引用 x86 DLL 时,在 Vista x64 上的 Visual Studio 2008 中创建 WCF 服务库很麻烦。调用 32 位 DLL 的服务需要具有 x86 平台目标才能在 64 位操作系统上运行。执行此操作时,WcfSvcHost 会在您尝试调试服务时引发 BadImageFormatException。有一个关于 MS 连接的错误报告。我使用的解决方法是将WcfSvcHost 核心标记为 32-bit。
清单问题
我遇到的主要问题是这个第三方本机 32 位 DLL 无法使用某些 WCF 主机加载。当调用使用第三方 DLL的服务操作时,我收到以下错误:
System.TypeInitializationException: '' 的类型初始值设定项引发异常。
.ModuleLoadExceptionHandlerException:在导致 C++ 模块无法加载的主要异常之后发生嵌套异常。
System.BadImageFormatException:该模块应包含程序集清单。(来自 HRESULT 的异常:0x80131018)
嵌套异常:
句柄无效。(来自 HRESULT 的异常:0x80070006 (E_HANDLE))
WcfSvcHost 启动时不会引发此异常,而是在调用引用 32 位 DLL 的服务操作时引发。非常有趣的是,在控制台应用程序上使用相同的 app.config 托管相同的服务没有例外并且可以完美运行:
using (ServiceHost host = new ServiceHost (typeof (MsgBrokerService))) {
host.Open ();
Console.WriteLine ("running");
Console.ReadLine …Run Code Online (Sandbox Code Playgroud) 基本的ICommand接口实现(例如DelegateCommand和RelayCommand)缺少RoutedCommand类中包含的InputGestures属性。此属性支持绑定到KeyGesture,并且RoutedUICommand中的Text属性支持设置控件的标头。例如:
<MenuItem Header="File">
<MenuItem Command="Open" />
Run Code Online (Sandbox Code Playgroud)
结果是在File(文件)菜单项下标记为“ Open Ctrl + O”的菜单项。对于手势,InputBindings会将输入来宾映射到命令,但是您松开了InputGestureText支持。
在为XAML或视图模型中的命令定义KeyGestures和Text时,如何保持绑定到视图模型的ICommand的简单性?例如,我希望在上下文菜单和主菜单中显示的命令显示与RoutedUICommand支持的相同的Header和InputGestureText,但是该命令的实现位于视图模型内部,而不位于Window后面的代码内部。
c++ ×1
data-binding ×1
events ×1
icommand ×1
iis-6 ×1
interop ×1
linq ×1
linq-to-sql ×1
powershell ×1
was ×1
wcf ×1
wpf ×1
xaml ×1