小编Ign*_*cia的帖子

如何在 Visual Studio 中执行单元测试之前执行 SQL 脚本以准备数据库

我有很多单元测试依赖于数据库的特定配置。我想每次运行单元测试时都执行一个脚本,这样数据库就可以了,并且测试不会因为数据库中的数据错误而失败。我目前有一个 SQL 脚本可以将正确的数据放在数据库中。

有没有办法从 Visual Studio 做到这一点(2008 会很棒)?

在此先感谢朋友。

sql unit-testing visual-studio-2008 visual-studio

5
推荐指数
1
解决办法
2715
查看次数

5
推荐指数
1
解决办法
466
查看次数

有没有办法在这个表中按时间间隔分组?

我有一张这样的桌子:

DateTime   A

10:00:01   2 
10:00:07   4
10:00:10   2
10:00:17   1
10:00:18   3
Run Code Online (Sandbox Code Playgroud)

这是否可以创建一个查询,每 10 秒返回一次 A 的平均值?在这种情况下,结果将是:

3 (4+2)/2
2 (2+1+3)/3
Run Code Online (Sandbox Code Playgroud)

提前致谢!

编辑:如果您真的认为这无法完成,请说“不”!:) 这是一个可以接受的答案,我真的不知道这是否可以做到。

EDIT2:我使用的是 SQL Server 2008。我想要不同的分组但已修复。例如,范围每 10 秒、1 分钟、5 分钟、30 分钟、1 小时和 1 天(只是一个例子,但类似的东西)

sql group-by sql-server-2008

5
推荐指数
1
解决办法
1万
查看次数

我应该在处理外部事件的类上实现IDisposable来释放事件处理程序吗?

可能重复:
使用IDisposable取消订阅事件

我发现自己在每个类上实现了IDisposable,它处理来自未在类中声明的对象的事件.例如:

public class Text
{
    public Text(ClassWithEvents c)
    {
        c.Event += EventHandler;
    }
}
Run Code Online (Sandbox Code Playgroud)

在这种情况下,我会将类Text声明为IDisposable,并且在Dispose方法中,我将删除事件处理程序以避免将对象固定在内存和其他令人讨厌的东西上(例如在应该死的对象上执行的代码).

我想知道是否有更好的方法来做这件事,因为我不喜欢有太多的一次性课程,因为他们必须"小心处理".

.net c# idisposable event-handling

5
推荐指数
0
解决办法
74
查看次数

如何通过 COM 将长数组从 VB6 传递到 C#

我需要将一个 int 或 long 数组(无关紧要)从 VB6 应用程序传递到 C# COM Visible 类。我试过像这样在 C# 中声明接口:

void Subscribe([MarshalAs(UnmanagedType.SafeArray, SafeArraySubType = VarEnum.VT_I4)]int[] notificationTypes)

void Subscribe(int[] notificationTypes)
Run Code Online (Sandbox Code Playgroud)

但他们俩都举了一个Function or interface markes as restricted, or the function uses an Automation type not supported in Visual Basic

我应该如何声明 C# 方法?

.net c# vb6 interop com-interop

5
推荐指数
1
解决办法
882
查看次数

这是一个WPF Datagrid错误吗?

我有以下概念证明:

XAML窗口:

<Window x:Class="WpfApplication1.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="MainWindow" Height="350" Width="525">

<DataGrid ItemsSource="{Binding Items}" AutoGenerateColumns="False" >
    <DataGrid.Columns>
        <DataGridTextColumn Binding="{Binding Name}" />
        <DataGridTemplateColumn >
            <DataGridTemplateColumn.CellTemplate>
                <DataTemplate>
                    <CheckBox IsChecked="{Binding Mode=TwoWay, Path=Enabled}" />
                </DataTemplate>
            </DataGridTemplateColumn.CellTemplate>
        </DataGridTemplateColumn>
    </DataGrid.Columns>
</DataGrid>
</Window>
Run Code Online (Sandbox Code Playgroud)

代码背后:

using System.Collections.ObjectModel;
using System.Windows;

namespace WpfApplication1
{
public partial class MainWindow : Window
{
    public ObservableCollection<Data> Items { get; private set; }

    public MainWindow()
    {
        InitializeComponent();
        this.Items = new ObservableCollection<Data>();
        this.DataContext = this;
        for (int index = 0; index < 30; index++)
        {
            this.Items.Add(new Data() …
Run Code Online (Sandbox Code Playgroud)

.net wpf datagrid

5
推荐指数
2
解决办法
2093
查看次数

从方法返回内存流

想知道以下情况是否会导致任何内存泄漏.

Aspx页面包含以下内容.

private void Generator(input)
{
    using (MemoryStream memoryStream = Helper.Instance.Generate(input))
    {
    }
}
Run Code Online (Sandbox Code Playgroud)

从返回内存流的aspx页面调用下面的方法.

MemoryStream Generate(input)
{
    MemoryStream stream = new MemoryStream();
    //doing some stream manipulation here

    return stream;
}
Run Code Online (Sandbox Code Playgroud)

.net c# dispose memorystream using

5
推荐指数
2
解决办法
7557
查看次数

这个内联为什么是错的?

如果有以下声明:

return this.revision.HasValue ? this.revision : throw new InvalidOperationException();
Run Code Online (Sandbox Code Playgroud)

我认为它会编译因为throw正在打破正常流程,并且不返回值但不构建它应该不是问题.

有没有办法纠正这个陈述或为什么不允许这样做?

谢谢.

编辑: this.revision是int?并且该方法返回int.

编辑2:如果我有这个方法

public int Test()
{
    throw new Exception();
}
Run Code Online (Sandbox Code Playgroud)

编译器不会抱怨没有返回值,我期望内联中的相同内容如果...至少我们知道可以完成,因为它已经在方法中完成了.

.net c# exception iif cls

5
推荐指数
2
解决办法
395
查看次数

ShowDialog方法挂起而没有显示窗口??死锁?

我们有一个WPF忙窗口指示器。它在主线程上使用表示window.ShowDialog()。响应Loaded事件后,将执行操作并关闭窗口,以便应用程序继续其工作。

window.ShowDialog()似乎从时间而不显示对话框,Loaded事件不会触发这样的应用程序挂起挂时间(很少)。相关代码如下:

private void BusyIndicatorAsyncCall(string text, Action<DoWorkEventArgs> doWorkDinamicView = null, Action doWork = null, Action workCompleted = null, Action<Exception> exceptionReturn = null)
{
    Window window = this.CreateWindowOfBusyIndicator(text);
    Dispatcher dispatcher = window.Dispatcher;
    BackgroundWorker backgoundworker = new BackgroundWorker();
    IViewModel viewModel = (window.Content as UserControl).DataContext as IViewModel;

    this.Modals.Add(viewModel, window);
    if (doWorkDinamicView != null)
    {
        DoWorkEventArgs eventArgs = new DoWorkEventArgs(window.Content);
        backgoundworker.DoWork += (s, e) => doWorkDinamicView.Invoke(eventArgs);
    }
    else if (doWork != null)
    {
        backgoundworker.DoWork += (s, e) => { doWork.Invoke(); …
Run Code Online (Sandbox Code Playgroud)

.net wpf message-pump hang showdialog

5
推荐指数
1
解决办法
1865
查看次数

是否可以仅在某些 Azure Devops 项目中禁用市场扩展?

我们是一个具有不同需求的大型组织,使用具有大量项目的单个 Azure DevOps 组织。随着时间的推移,许多不同的市场扩展被添加,但我们的大多数项目并不需要它们,这使得菜单和用户体验变得笨拙,而它们对其他人却是有益的。

是否可以仅在某些项目中禁用某些扩展,或者只能为整个组织配置扩展?

azure-marketplace azure-devops

5
推荐指数
2
解决办法
1669
查看次数