class Class1<T>
{
public virtual void Update(T entity)
{
Update(new List<T>() { entity }); //It's failed
}
public virtual void Update(IEnumerable<T> entities)
{
}
public virtual void Update<TSub>(TSub entity) where TSub : T
{
}
public virtual void Update<TSub>(IEnumerable<TSub> entities) where TSub : T
{
}
}
Run Code Online (Sandbox Code Playgroud)
我有一段代码.但它总是失败.
如果我换Update(new List<T>() { entity })了Update((new List<T>() { entity }).AsEnumerable()),那就没问题了.
删除第三种方法时也可以Update<TSub>(TSub entity) where TSub : T.
谁能告诉我为什么?
我写了一个查询
SELECT * FROM Users WHERE UserName = 'admin '
Run Code Online (Sandbox Code Playgroud)
错误打字.但我发现结果与之相同
SELECT * FROM Users WHERE UserName = 'admin'
Run Code Online (Sandbox Code Playgroud)
似乎SQL Server自动忽略了最后的空白区域.
谁能告诉我为什么?
仅供参考,该列UserName属于类型nvarchar(MAX).