小编Gal*_*a88的帖子

DbContext丢弃更改而不进行处理

我有一个桌面客户端应用程序,它使用模态窗口来设置分层对象的属性.由于这是一个客户端应用程序,并且没有线程化对DbContext的访问,我在主Form上使用长时间运行的上下文传递给模态子项.

这些模态窗口使用PropertyGrid显示实体属性,还具有取消按钮.如果修改了任何数据并按下了取消按钮,则更改将反映在父表单中(我无法处理DbContext object).

如果DbContext.SaveChanges()没有调用该方法,有没有办法丢弃所做的任何更改?

更新:实体框架版本4.4.

.net c# entity-framework undo dbcontext

52
推荐指数
6
解决办法
4万
查看次数

两个数组之间的打字稿差异

有没有办法在TypeScrpit中从list_b返回list_a的缺失值?

例如:

var a1 = ['a', 'b', 'c', 'd', 'e', 'f', 'g'];
var a2 = ['a', 'b', 'c', 'd', 'z'];
Run Code Online (Sandbox Code Playgroud)

结果值是

['e', 'f', 'g'].
Run Code Online (Sandbox Code Playgroud)

提前致谢

arrays typescript difference

18
推荐指数
3
解决办法
3万
查看次数

序列化LINQ IEnumerable的结果

我有一个简单的值类型:

    [Serializable]
    private struct TimerInstance
    {
        public TimerInstance(string str, long nTicks)
        {
            _name = str;
            _ticks = nTicks;
        }

        private readonly string _name;
        private readonly long _ticks;

        public string Name { get { return _name; } }
        public long Ticks { get { return _ticks; } }

        public override string ToString()
        {
            return string.Format("{0,20}: {1,10:N}", Name, Ticks);
        }
    }
Run Code Online (Sandbox Code Playgroud)

你会注意到它是可序列化的.然后我列出了这些:

static private List<TimerInstance> _Timers = new List<TimerInstance>();
Run Code Online (Sandbox Code Playgroud)

和一个LINQ方法,从列表中消除最低5%和前5%的计时器:

// Return items that should be persisted.  By convention, we are eliminating …
Run Code Online (Sandbox Code Playgroud)

c# linq ienumerable

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

WPF DataGrid触发单元格内容

我有一个datagrid包含来自a的值stored procedure.所有值都设置BoldFontWeight.

当单元格内容等于0时,我想使文本正常.

我怎么能用触发器做到这一点?

我已经像下面这样做但它不起作用:

<DataGrid.CellStyle>
    <Style TargetType="DataGridCell">
            <Setter Property="FontWeight" Value="Bold" />
            <Style.Triggers>
                <Trigger Property="Content" Value="0">
                    <Setter Property="FontWeight" Value="Normal"/>
                </Trigger>
            </Style.Triggers>
    </Style>
</DataGrid.CellStyle>
Run Code Online (Sandbox Code Playgroud)

c# wpf datagrid triggers

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

在Sql Server中如何为多列进行透视

这是我的示例表,我想转动类别列并将销售,库存和目标作为行

在此输入图像描述

我想要这种形式的样本输出,如下所示,其中类别代替行和列代替行

在此输入图像描述

sql sql-server pivot

4
推荐指数
4
解决办法
6万
查看次数

列出捐赠总额大于某事物的所有捐赠者

这是表结构

捐赠者(捐赠者ID,姓名)

捐赠(ID,捐赠ID,金额)

这是我的查询:

SELECT donor.name, SUM(donation.amount) "Total"
FROM donor, donation
WHERE donor.donorID = donation.donorID
AND SUM(donation.amount) > 1000;
GROUP BY donor.name
ORDER BY SUM(donation.amount) DESC;
Run Code Online (Sandbox Code Playgroud)

这是错误:

ORA-00934:此处不允许组功能00934. 00000 - "此处不允许组功能"

删除总和(捐赠)时没有错误<1000我如何整合它没有错误?请帮忙.

sql oracle

3
推荐指数
1
解决办法
2568
查看次数

TSQL触发器而不是插入

我需要在某个表中插入后替换列值之一,如果它与禁止值匹配。

例子:

INSERT INTO [dbo].[TEST_A]
           ([COL_A]
           ,[COL_B])
     VALUES
           ('TEST'
           ,'TEST1')
Run Code Online (Sandbox Code Playgroud)

TEST1 是一个禁止值,我想将其替换为“BANNED”。

这是我写的触发器,但它似乎工作正常:

CREATE TRIGGER [dbo].[TEST_NAME_INS] ON [dbo].[TEST_A]
 INSTEAD OF INSERT
AS
BEGIN
    INSERT INTO TEST_A
    (COL_A
    ,COL_B)
    SELECT 
    COL_A
   ,REPLACE(COL_B, 'TEST1', 'BANNED')
   FROM inserted
   WHERE INSERTED.COL_B IN ('TEST1')
Run Code Online (Sandbox Code Playgroud)

错误是,如果我在 COL_B 中插入不同的值,则不会插入任何行。

你能给我一个解决方案吗?

提前致谢

t-sql sql-server triggers insert

2
推荐指数
1
解决办法
2636
查看次数

Arrays.binarySearch的行为

我的目的是在循环遍历excel文件时跳过一些预定义的行,如下所示:

int rowIndex = 0;
int[] rowsToBeSkipped = new int[]{1,2,15,16,17,18,31,32,33,34};

while (rowIterator.hasNext()) 
{
    Row row = rowIterator.next();
    if(Arrays.binarySearch(rowsToBeSkipped, rowIndex) == -1){
        System.out.println("true "+rowIndex);
    }else{
        System.out.println("false "+rowIndex);
    }
        rowIndex++;
    }
}
Run Code Online (Sandbox Code Playgroud)

以下是结果:

true 0
false 1
false 2
false 3
false 4
false 5
false 6
false 7
false 8
false 9
false 10
false 11
false 12
false 13
false 14
false 15
false 16
false 17
false 18
false 19
false 20
false 21
false 22
false 23
false …
Run Code Online (Sandbox Code Playgroud)

java arrays binary-search

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

当字符串为空时,C# Automapper 如何将字段设置为 null

有没有一种方法可以设置我正在映射的类的所有属性,即应该string.Empty映射到NULL.

 Mapper.CreateMap<TSource, TDest>();
Run Code Online (Sandbox Code Playgroud)

我希望所有TSource为空字符串的属性都映射到相应的属性NULLTDest

目前,我还没有找到一种方法来全局分配此条件,而无需手动为所有属性设置它。

编辑

我仅需要它来实现特定映射,而不是应用程序中定义的所有映射。

c# automapper

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