我刚刚开始在 SQL Server 2016 中使用查询数据存储,它确实非常有用。我遇到的问题是,服务器上有许多服务正在监视服务代理队列,因此它们的 WAITFOR 语句始终在报告中显示为运行时间最长的查询。这本身不是问题,但它们运行的时间太长,以至于扭曲了报告上的持续时间轴,使得所有其他查询几乎不可见。
有什么方法可以让查询存储忽略查询,这样它就不会显示在报告中吗?
我有一个应用程序池,每分钟都在回收.私有内存设置为1433600KB虚拟内存设置为2457600KB(是的很多).回收常规时间间隔保留为其默认值1740.从我可以看到,当回收发生时,内存限制没有达到.我找不到任何可能导致此问题的服务器上的任何内容.
有没有人对这可能是什么原因有任何想法?
我有一个使用MVVM模式用C#和WPF编写的用户控件.
我想要做的就是在绑定的ViewModel中有一个属性,该属性暴露在控件之外.我希望能够绑定到它,并且我希望对绑定到公开值的控件之外的任何内容进行对属性的任何更改.
这听起来很简单,但它让我拉出我的头发(并没有留下太多的东西).
我在用户控件中有一个依赖属性.ViewModel具有实现INotifyPropertyChanged接口的属性,并正确调用PropertyChanged事件.
一些问题:1)如何获取ViewModel属性的更改并将其绑定到依赖属性而不破坏MVVM分离?到目前为止,我设法做到这一点的唯一方法是在后面的Controls代码中分配ViewModels PropertyChanged事件,这绝对不是MVVM.
2)使用上面的软糖,我可以得到Dependency属性来启动它的PropertyChangedCallback,但是在控件之外绑定到它的任何东西都不会获得更改.
必须有一种简单的方法来完成所有这些.请注意,我没有在这里发布任何代码 - 我希望不用我现有的代码来影响答案.而且,你可能都会嘲笑它...
抢
好的,澄清 - 代码示例:
usercontrol代码背后:
public static DependencyProperty NewRepositoryRunProperty = DependencyProperty.Register("NewRepositoryRun", typeof(int?), typeof(GroupTree),
new FrameworkPropertyMetadata( null, new PropertyChangedCallback(OnNewRepositoryRunChanged)));
public int? NewRepositoryRun
{
get { return (int?)GetValue(NewRepositoryRunProperty); }
set
{
SetValue(NewRepositoryRunProperty, value);
}
}
private static void OnNewRepositoryRunChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
{
if (e.OldValue != e.NewValue)
{
}
}
public GroupTree()
{
InitializeComponent();
GroupTreeVM vm = new GroupTreeVM();
this.DataContext = vm;
}
Run Code Online (Sandbox Code Playgroud)
Viewmodel(GroupTreeVM.cs)
private int? _NewRepositoryRun;
public int? NewRepositoryRun
{
get …Run Code Online (Sandbox Code Playgroud)