小编Miq*_*oll的帖子

使用linq在foreach内部时,数据库被锁定而没有ToList()

我试过寻找答案却找不到答案.'问题'很简单:

如果我有一个使用linq的项目集合如下:

var items = db.AnyTable.Where(x => x.Condition == condition).ToList();
Run Code Online (Sandbox Code Playgroud)

使用linq的另一个项目集合但没有ToList():

var items2 = db.AnyTable.Where(x => x.Condition == condition);
Run Code Online (Sandbox Code Playgroud)

如果现在我尝试使用foreach迭代每个项目(我没有尝试while或其他类型的迭代方法):

foreach (var item in items) 
{
    int i = 2;// Doesn't matter, The important part is to put a breakpoint here.
}
Run Code Online (Sandbox Code Playgroud)

如果我在断点处停止代码并且我尝试更新AnyTableon SQL Management Studio一切正常.如果!:

foreach (var item in items2) 
{
    int i = 2;// Doesn't matter, The important part is to put a breakpoint here.
}
Run Code Online (Sandbox Code Playgroud)

如果现在我尝试更新(在断点处)AnyTableon SQL Management Studio我将无法做到(TimeOut). …

c# sql linq

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

查找分隔的字符串中的所有组合

我试图在c#中的所有组合中记住这个想法:

给定一个字符串,foo我希望得到一个List<string>值:

f o o
fo o
foo
f oo
Run Code Online (Sandbox Code Playgroud)

正如你所看到的那样,它并不像获取所有子字符串那样容易,而是将所有字符串在由空格分隔的字符串中.

我尝试过这样的事情:

List<string> result = new List<string>();
string text = "foo";
for (int i = 1; i < foo.Lenght; i++) 
{
    //I'm stucked --> everything I think is too stupid and I don't know how to procede or not fast enough. I'm really stuck.
}
Run Code Online (Sandbox Code Playgroud)

编辑:有一些正确的答案,但很显然,任何人都不会做,因为我一起工作的字符串有55至85个字符每一个这样就意味着,在答案中最好的功能会给我2之间的事情^ 54和2 ^ 84种可能的组合,这只是有点太多了.

现在很清楚,找到所有的组合,然后与他们做一些事情是行不通的.我不得不放弃它.

c# string

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

使用 openxml 创建 powerpoint 的示例

在哪里可以找到使用 OpenXML 在 ppt 文件中插入文本和图像的“Hello World”?我无法生成简单的模板。

c# powerpoint openxml

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

使用第一次布尔c ++或java

我通常使用像这样的布尔'firstTime':

在C++中:

bool firsTime = true;
for (int i = 0; i < v.size(); i++) {
    if (firstTime) {
        //do something just once
        firstTime = false;
    }
    else {
        //do the usual thing
    }
}
Run Code Online (Sandbox Code Playgroud)

在java中使用布尔值而不是bool是相同的,所以我不放置代码.

questin是,无论如何在java或c/c ++中使用if子句中的bool/boolean并自动赋值给bool/boolean值false?

我知道这似乎是一个废话,但它会保存我的代码很多行,因为我有很多基本情况,而且很重要或者很重要.

我确实想知道在if子句中使用它之后是否有值将false设置为false.我知道在一个或多个时间我们可以使用:

if (i == 0)
Run Code Online (Sandbox Code Playgroud)

但我也在考虑调用需要知道事物的函数,并且通常由bool引用.

c++ java boolean

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

Crystal报告 - 使用公式中当前对象的值

我正在使用c#创建一个Crystal Report,我必须在320个不同的参数中复制一个简单的公式,但总是使用相同的条件,如下所示:

if ({Precios.AhorroE1}[1] = '-') then crGreen else ( crRed )
Run Code Online (Sandbox Code Playgroud)

每个对象都有一个不同的名称(在示例aboce中,Precios.AhorroE1但我必须为320个不同的对象制作相同的条件.

我一直试图找到一种方法来引用正在评估公式的对象,但我找不到它.我想知道是否有可能做类似的事情:

if ({currentobject}[1] = '-') then crGreen else ( crRed )
Run Code Online (Sandbox Code Playgroud)

currentobject评估公式的对象在哪里?

c# vb.net crystal-reports self-reference

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

.Net core Action Filter 被应用于所有忽略装饰器的控制器

我已经定义了一个IAsyncActionFilter(Microsoft Action Filter)如下:

\n\n
public class CustomActionFilter : IAsyncActionFilter\n{\n\n    public CustomActionFilter()\n    {\n    }\n\n    public async Task OnActionExecutionAsync(ActionExecutingContext context, ActionExecutionDelegate next)\n    {\n        // do something\n    }\n}\n
Run Code Online (Sandbox Code Playgroud)\n\n

我已将其声明添加startupConfigureServices

\n\n
services.AddScoped<CustomActionFilter>();\n
Run Code Online (Sandbox Code Playgroud)\n\n

最后ConfigureServices我将其配置为Filter

\n\n
services.AddMvc((opts) =>\n{\n    opts.EnableEndpointRouting = false;\n    opts.Filters.Add(new CustomActionFilter());\n});\n
Run Code Online (Sandbox Code Playgroud)\n\n

最后,我在控制器中使用装饰器来进行特定调用,以指示我希望在该调用中应用该过滤器:

\n\n
[ApiController]\n[Route("a")]\npublic class AController : Controller\n{\n\n    public AController()\n    {\n    }\n\n    [HttpGet("aa")]\n    [ServiceFilter(typeof(CustomActionFilter))]\n    public async Task<IActionResult> DoubleA()\n    {\n        // do something after the filter is called\n    }\n}\n
Run Code Online (Sandbox Code Playgroud)\n\n

到目前为止,一切工作正常,并且 …

c# action-filter .net-core asp.net-core asp.net-core-3.1

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