小编Ami*_*r M的帖子

Linq查询的行为不符合预期

我有一个非常简单的linq查询,如下所示:

var result = (from r in employeeRepo.GetAll()
              where r.EmployeeName.Contains(searchString) 
                    || r.SAMAccountName.Contains(searchString)
              orderby r.EmployeeName
              select new SelectListItem 
              { 
                  Text = r.EmployeeName, 
                  Value = r.EmployeeName 
              });
Run Code Online (Sandbox Code Playgroud)

这个问题是出于一些奇怪的原因,它把我搜索的每个人的记录都记录下来,无论是小写还是大写.即

  1. 测试用户
  2. 测试用户
  3. 测试用户

我会找回正确的记录.然而,当我使用小写字母搜索我自己的名字时,我没有得到任何结果,但如果我使用我的名字的第一个字母作为大写,那么我得到结果.我似乎无法弄清楚为什么这样做.

数据库中的每个名字和姓氏都以大写字母开头.

我正在使用的searchString是:

  1. richard - 我得到了正确的结果
  2. waidande - 未找到结果

上述两个用户都在数据库中.

我也Entity Framework用来查询Sql Server 2012.

c# linq sql-server entity-framework sql-server-2012

10
推荐指数
2
解决办法
670
查看次数

RabbitMQ 安装 - 启用插件后避免服务重新启动

我有在 Windows 机器上安装rabbitmq 的 c# 代码。跑完之后rabbitmq-service install我rabbitmq-service start就跑了rabbitmq-plugins enable rabbitmq_management。最后我得到:

设置3个插件。离线更改;更改将在代理重启时生效。

我想知道是否可以避免这种重启。这会花费大量时间并减慢安装过程。我很确定在我的测试过程中至少有一次我不需要这样做,但我无法重现......

windows installation plugins rabbitmq

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

尝试从 .net core dll 创建程序集时出现 SQL Server 错误

我正在尝试从 SQL Server 2017 中的 .NET Core dll 创建程序集:

CREATE ASSEMBLY my_assembly 
FROM 'C:\Temp\MyDll.dll' WITH PERMISSION_SET = SAFE;
Run Code Online (Sandbox Code Playgroud)

这是 dll csproj :

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <TargetFramework>netcoreapp3.1</TargetFramework>
    <AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
  </PropertyGroup>

  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|AnyCPU'">
    <PlatformTarget>x64</PlatformTarget>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.SqlServer.SqlManagementObjects" Version="161.46041.41" />
  </ItemGroup>   
  
</Project>
Run Code Online (Sandbox Code Playgroud)

当我运行查询时,出现以下错误:

程序集“MyAssembly”引用程序集“system.runtime, version=4.2.2.0,culture=neutral, publickeytoken=b03f5f7f11d50a3a.”,当前数据库中不存在该程序集。SQL Server 尝试从引用程序集来自的同一位置定位并自动加载引用程序集,但该操作失败(原因:2(系统找不到指定的文件。))。请将引用的程序集加载到当前数据库中,然后重试您的请求。

我该如何解决?

c# .net-assembly sql-server-2017 .net-core-3.1

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