问题列表 - 第1667页

自 SQL 2008 升级以来,SqlDataReader.HasRows 返回 false

我有一个连接到 SQL 数据库的 ASP.NET 2.0 网站。我已将 SQL 服务器从 2000 年升级到 2008 年,从那时起,一页无法正常工作。

我已经解决了这个问题,即使数据集不为空,对 SqlDataReader.HasRows 的调用也返回 false 并且删除检查允许通过 reader.Read() 循环访问预期数据。

    _connectionString = WebConfigurationManager.ConnectionStrings["SQLServer"].ConnectionString;
    SqlConnection connection = new SqlConnection(_connectionString);
    SqlCommand command = new SqlCommand(searchtype, connection);
    SqlParameter _parSeachTerm = new SqlParameter("@searchterm", SqlDbType.VarChar, 255);
    _parSeachTerm.Value = searchterm;
    command.Parameters.Add(_parSeachTerm);
    command.CommandType = CommandType.StoredProcedure;
    try
    {
        connection.Open();
        SqlDataReader reader = command.ExecuteReader();
        if (reader.HasRows) //this always returns false!?
        {
            while (reader.Read())
            {...
Run Code Online (Sandbox Code Playgroud)

有人知道发生了什么吗?在 HasRows 返回正确值的其他页面上也有类似的代码块。

编辑 - 只是为了澄清,存储过程确实返回我已经确认的结果,因为如果我删除 HasRows 检查,循环运行良好。只需将连接字符串中 SQL 服务器的名称更改为在 SQL 2000 上运行的相同数据库,问题就会消失。我已经检查过 NOCOUNT 已关闭,那么如果情况并非如此,还有什么可以使 HasRows …

c# sql asp.net sql-server-2008

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

什么是SVN中的pre-revprop-change挂钩,我该如何创建它?

我想在存储库浏览器中编辑日志注释,并收到一条错误消息,指出存储库中不存在pre-revprop-change挂钩.除了有一个可怕的名字,什么是pre-revprop-change钩子,我该如何创建它?

svn svn-hooks

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

如何检查javascript中是否存在文件?

我正在使用jquery库来加载html文件的内容.像这样的东西:

$( "#主").负载( "的login.html")

如果文件(在这种情况下是'login.html')不存在,我想检测它,以便我可以将用户重定向到错误页面.任何想法我如何检测是否存在要加载的文件?

jquery file exists

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

如何使用正则表达式解析命令行?

我想在单个字符串参数中拆分类似字符串的命令行.如何查看正则表达式.问题是参数可以引用.例如:

"param 1"param2"param 3"

应该导致:

param 1,param2,param 3

regex parsing

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

关于System.Linq.Lookup类

我在阅读C#书时遇到了这个课,并提出了一些问题.

  • 为什么这会添加到System.Linq命名空间而不是usuall Collections命名空间?
  • 这个课程背后的意图是什么
  • 为什么这个类不是用于直接实例化?这只能通过ToLookup扩展,对吧?

c# linq

15
推荐指数
2
解决办法
4448
查看次数

调用C++ STL容器的value_type的静态成员函数

我试图弄清楚为什么以下不起作用.我有一个std :: vector,我想调用它的静态成员函数包含value_type,如下所示:

std::vector<Vector> v;
unsigned u = v.value_type::Dim();
Run Code Online (Sandbox Code Playgroud)

其中Vector实际上是模板化类型的typedef:

template <typename T, unsigned U> class SVector; 
typedef SVector<double, 2> Vector; //two-dimensional SVector containing doubles
Run Code Online (Sandbox Code Playgroud)

静态成员函数Dim()实际上内联了Vector的维数U.

现在,编译器返回一条错误消息:

 error: ‘SVector<double, 2u>’ is not a base of 
 ‘std::vector<SVector<double, 2u>, std::allocator<SVector<double, 2u> > >
Run Code Online (Sandbox Code Playgroud)

这让我很困惑.我可以替换明显有问题的线路

unsigned u = Vector::Dim();
Run Code Online (Sandbox Code Playgroud)

这是有效的,但显然是丑陋的,因为它硬编码关于v的value_type的假设...谢谢!

c++ stl

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

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

我应该将带有latin1_swedish_ci排序规则的MySQL数据库迁移到utf-8,如果是,如何?

我的Rails应用程序使用的MySQL数据库目前具有默认排序规则latin1_swedish_ci.由于Rails应用程序(包括我的)的默认字符集是UTF-8,因此utf8_general_ci在数据库中使用排序规则对我来说似乎是明智的.

我的想法是否正确?

假设是,将整理和数据库中的所有数据迁移到新编码的最佳方法是什么?

mysql ruby-on-rails character-encoding

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

按间隔分组

给定一个包含数字字段(mynum)的表(mytable),如何编写一个SQL查询,根据该字段中的值范围而不是每个不同的值来汇总表的数据?

为了一个更具体的例子,让我们将它的间隔设为3,并用count(*)进行"汇总",这样结果就会告诉mynum为0-2.99的行数,它是3的行数. -5.99,其中6-8.99等

mysql sql

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

你如何设计一个返回(理论上)无限量项目的枚举器?

我正在编写与此类似的代码:

public IEnumerable<T> Unfold<T>(this T seed)
{
    while (true)
    {
        yield return [next (T)object in custom sequence];
    }
}
Run Code Online (Sandbox Code Playgroud)

显然,这种方法永远不会回归.(C#编译器默默地允许这个,而R#给我警告"函数永远不会返回".)

一般来说,提供一个返回无限数量项的枚举器,而不提供停止枚举的方法是不好的设计?

这种情况有什么特别的考虑因素吗?纪念品?PERF?其他陷阱?

如果我们总是提供退出条件,哪些是选项?例如:

  • 类型为T的对象,表示包含或排他的边界
  • a Predicate<T> continue(同样TakeWhile如此)
  • 伯爵(同样Take)
  • ...

我们应该依赖用户呼叫Take(...)/ TakeWhile(...)之后Unfold(...)吗?(也许是首选方案,因为它利用了现有的Linq知识.)

如果代码将在公共API中发布,无论是按原样(通用)还是作为此模式的特定实现,您会以不同的方式回答这个问题吗?

c# enumerator

6
推荐指数
2
解决办法
1088
查看次数