- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有这个方法:
public static IEnumerable<T> GetList(string where, Dictionary<string, object> parameters)
{
IEnumerable<T> entities;
using (var connection = OpenConnection())
{
entities = connection.GetList<T>(where, new DynamicParameters(parameters));
}
return entities;
}
我这样调用它:
string publicID = "463EC1EE-8AAB-4ABA-9B39-132BC8D3236E"
Dictionary<string, object> parameters = new Dictionary<string, object>();
parameters.Add("@APIPublicID", publicID);
var apiUsers = Repository<APIUsers>.GetList("WHERE APIPublicID = @APIPublicID", parameters).ToList();
GetList()
方法调用 SIMPLECrud .dll,它是 Dapper 的包装器。
效果很好。但这是真正奇怪的事情。如果我在 guid publicID
的末尾添加一些额外的字母或数字,它仍然有效:
代替:
string publicID = "463EC1EE-8AAB-4ABA-9B39-132BC8D3236E"
我愿意...
string publicID = "463EC1EE-8AAB-4ABA-9B39-132BC8D3236EABCDEFG"
.... // rest of the method as before
我得到了完全相同的结果。如果我缩短 guid,或者如果我更改其中的字符,那么它会按预期运行。
我在这里做错了什么?
最佳答案
我认为这与 dapper 或 SIMPLECrud 无关,而与 SQL Server 如何将字符串转换为 uniqueidentifier
有关。我假设您使用 SQL Server,但如果不是,您的数据库可能以类似的方式运行。
当将字符串转换为 uniqueidentifier
时,SQL 服务器将忽略过多的字符:
select cast('463EC1EE-8AAB-4ABA-9B39-132BC8D3236EABCDEFG' as uniqueidentifier)
-- no errors, returns 463EC1EE-8AAB-4ABA-9B39-132BC8D3236E
这意味着如果您示例中的 APIPublicID
列是 uniqueidentifier
类型,则以下查询的行为相同:
select * from MyTable WHERE APIPublicID = '463EC1EE-8AAB-4ABA-9B39-132BC8D3236E'
select * from MyTable WHERE APIPublicID = '463EC1EE-8AAB-4ABA-9B39-132BC8D3236EABCDEFG'
因为要比较,它们必须是同一类型,所以你的字符串被转换为uniqueidentifier
,忽略多余的部分(ABCDEFG
)。
关于c# - 带有 SIMPLECrud 的 Dapper : GetList with WHERE behaving like LIKE instead of =,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49244395/
我刚刚发布了这个问题 jQuery - passing arrays in post request ,这里我不会在 post 请求中发送数组,但是在 jQuery 代码中没有问题。 问题在于在 dj
我在服务器端有方法: @RequestMapping(method = RequestMethod.GET) public List getAllUsers(@RequestParam(value =
灵感来自this博客文章中,我试图通过将搜索参数保存到 session 中来创建一个处理配置文件搜索的 View ,以便可以通过分页保留查询。 以下是观点: def profile_search(re
HomePage.java Table table = new Table("table"); List list = (List) table.getList(); System.out.p
我对 angular 和 restangular 真的很陌生,也许你能帮我, 为什么这段代码有效 tunariAppApp.controller('ProductListCtrl', func
我正在尝试编写一个使用 hibernate 模式访问数据库的网站。保存我可以正常工作,但是当我尝试在执行 session.createQuery 调用时调用我的 getList 方法时,代码只是落入
我的 Rails API 以这种方式在响应 header 中包含分页数据: X-Pagination {"total":332,"total_pages":12,"first_page":true,"
当客户端未经身份验证时,我正在使用的 API 返回 200 并带有字符串错误消息。所以如果我打电话: var restSvc = Restangular.service('message'); var
当我在我的 angularJs Controller 中使用以下代码时 var baseAccount = Restangular.all('account'); $scope.submit
现在我看到一些开发人员在每个类中使用名为 GetAll 或 Getlist 的函数。这些函数返回其类的列表或实体。 之后,他们像这样使用这些功能: dim k = from t in customer
尝试获取列表时出现以下异常: Exception calling "GetList" with "1" argument(s): "0x80070002" At C:\Scripts\teaCvPro
我尝试加快并行调用两个 API 的代码速度。 第一个是 List A = aService.getListA(); List B = bService.getListB(); 现在我将其更改为并行调用
我似乎没有发现这个特定的错误。 我正在向 django 中的函数发送 POST,当我尝试提取数据时,我在 request.getlist 行上遇到此消息: AttributeError: 'WSGIR
根据我对 restangular docs 的理解, 调用Resource.getList('subElement',{query:param})应该调用/resource/subelement?qu
我想通过 api 上传多个文件,当我打印出 f 时,我可以获得“FileStorage”列表,如下所示:[, , ]但不知怎的,每次我经历 for 循环时,它只返回一项。我查看了文档和类似的问题,但同
我的算法课的第一个作业是我必须创建一个程序,从提供的 csv 文件中读取一系列书名,对它们进行排序,然后打印出来。该作业具有非常具体的参数,其中之一是我必须创建一个静态 List getList(St
我在调用 getList 时遇到此错误: S3TransferManagerSample[1717:48308] listObjects 失败:[Error Domain=com.amazonaws.
我们正在尝试为 Django API 返回一个标题列表,其中标题可以包含一些关键字。 例如,如果我们使用 __icontains 方法来搜索“money”和“world”(api.com/?keywo
出于某种原因,我无法让我 4 周前工作的东西工作:/我有一个网站,我通过 jQuery 添加了一个复选按钮,如果它被选中,我需要 Flask 来读出。我做了一个最小的例子,但它仍然不起作用。 代码如下
我有一个快速的问题我这样使用子句有关系吗: for(Object obj : something.b.c.d.getList(){ ... } 或者这个 List list = something.b
我是一名优秀的程序员,十分优秀!