小编iam*_*ous的帖子

从Web上调用存储过程很慢,快速从Management Studio调用

我有一个存储过程,每次从Web应用程序调用它都会疯狂地超时.

我启动了Sql Profiler并跟踪了那些超时的调用,最后找到了这些东西:

  1. 当从MS SQL Management Studio中执行语句时,使用相同的参数(实际上,我从sql profile trace复制了过程调用并运行它):它以5~6秒的平均值完成.
  2. 但是当从Web应用程序调用时,它需要超过30秒(在跟踪中),因此我的网页实际上超时了.

除此之外,我的web应用程序都有自己的用户事实上,每一件事情是相同的(相同的数据库,连接,服务器等),我也试过直接与Web应用程序的用户的工作室运行查询,并没有花费超过6秒.

我怎样才能知道发生了什么?

我假设它与我们使用BLL> DAL图层或表适配器这一事实无关,因为跟踪清楚地显示了延迟在实际过程中.这就是我所能想到的.

编辑我在这个链接中发现ADO.NET设置ARITHABORT为true - 这在大多数情况下是好的,但有时会发生这种情况,建议的解决方法是向with recompile存储过程添加选项.在我的情况下,它不起作用,但我怀疑它与此非常相似.任何人都知道ADO.NET做了什么或者我在哪里可以找到规范?

asp.net stored-procedures sql-server-2008

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

从url中删除哈希

我是ajax-ifying在我的一个项目中的分页,因为我希望用户能够为当前页面添加书签,我通过哈希附加页码,说:

onclick="callPage(2); window.location.hash='p=2'; return false;"
Run Code Online (Sandbox Code Playgroud)

并且hyperlink它在它上面工作正常和一切,除了,当页码是1,我不想URL成为/products#p=1,我只是希望它是/products

我试过这些变化:

  1. window.location.hash=''工作,但网址现在像/products#,我不是那里的哈希.
  2. 根本没有使用window.location.hash,但当用户从第3页回到第1页时,他在第一页,但是url仍然是/products#p=3因为我没有弄乱哈希.
  3. 谷歌搜索这导致我几分钟(约15)愚蠢的论坛,问题被正确,但答案是建议页面跳跃,因为线程创建者在href中有一个哈希<a href="#">,他应该使用javascript:void(0).(他们从未听说过Ajax吗?)

所以最后,我决定制作这个帖子,我在这里发现了几个类似的线程,但所有的答案与我的第二点非常相似.

所以我的一个大问题仍然是一个问题:如何从网址中挖出哈希,并可能离开宇宙?(仅限第一页!)

javascript ajax fragment-identifier

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

LINQPad 4不知道HttpUtililty - 如何解决?

我最近开始使用LINQPad测试零碎,节省了大量时间.

但是,有时它会给我带来一些小错误的错误.

当我想测试这个:

HttpUtility.UrlPathEncode("Make sure");
Run Code Online (Sandbox Code Playgroud)

我收到这个错误:The name 'HttpUtility' does not exist in the current context.

有没有办法让它识别像HttpUtility这样的基本内容?


我刚试过写作:

System.Web.HttpUtility.UrlPathEncode("Make sure")
Run Code Online (Sandbox Code Playgroud)

我被证明了这一点: The type or namespace name 'HttpUtility' does not exist in the namespace 'System.Web'

linqpad

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

Sql Server中分组行的平均值

我有一个Sql Server表..它是这样的:

Id ...... Column1 ...... Column2  
````````````````````````````````  
1 ........ 1 ............. 34  
2 ........ 1 ............. 44  
3 ........ 2 ............. 45  
4 ........ 2 ............. 36  
5 ........ 2 ............. 23  
6 ........ 3 ............. 68  
7 ........ 3 ............. 26  

因此,我需要选择Column2的平均值,但是在执行此操作之前,请选择column1的列.
我的意思是,如果我说Avg(Column2)它只返回一行,其中包含所有行的平均值.

我需要的是,首先我需要按列对它们进行分组,以便:
column2的平均值,其中column1 = 1
column2的平均值,其中column1 = 2
column2的平均值column1 = 3

所以我希望返回3行,其中包含column1各自值的平均值.我迷失了这个,有任何提示/帮助吗?

ps:我尝试了几个相关的问题,但没有一个帮助/我无法理解.

sql-server average

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

如何理解MSDN文档?

首先,请不要认为这不是一个与编程相关的问题,因为它非常重要.

当我以前在高中使用VB 6时,MSDN真是太棒了,我从来没有在其他任何地方寻求帮助.然后是整个.net和在线MSDN,什么不是,并且不再有任何实际的例子.我慢慢开始避免使用MSDN,现在当我在Google上搜索某些内容时,我会立即加入-msdn其中.

如果你举一个ArrayList计数的简单例子,没有提到必须像这样使用count:

ArrayList tmpArray = new ArrayList();
tmpArray.Add("something");
LabelCount.text = tmpArray.Count;
Run Code Online (Sandbox Code Playgroud)

好吧,这是一个糟糕的例子,但你明白了.MSDN拥有它的方式实际上非常有用,如果你对成员变量是什么有基本的想法等等.但是如果你不熟悉c#,那么你将完全迷失.

再说一次,我是c#的初学者,在.net上工作不到一年,所以如果我看看LinQ等更复杂的东西,或者使用DataSets等操作,我不知道发生了什么.

PHP文档非常简洁!一个简单的strlen有一个简洁的描述返回值,函数参数等,加上评论部分有很多用户给出了这么多有价值的用法示例strlen,我发现它真的非常相关和有用.

我确信它不是MSDN难以理解的,而是我不懂的MSDN.

有没有办法在MSDN中查看和理解?你们怎么推荐MSDN?任何帮助赞赏.谢谢.

ps:是的,在我来到.net之前,我曾经和php一起工作了相当长的时间.
pps:对不起,现在我想不出任何正确的页面和情况,我有这个问题所以我只是给出了我的问题的一般描述,但我几乎总是遇到这个 - 从来没有理解msdn甚至我的朋友告诉我他从不提起它.所以想知道它到底在做什么.或者,我在这里做什么不知道如何参考官方文件.

msdn

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

如何使用LINQ将id列表作为int

我的代码中有一个DataTable,比如pdt.我只想选择all table["id"]并在整数数组中填充.

我可以继续,foreach但我正在尝试学习Lambda表达式.我无法弄清楚如何处理这个问题.

我试过了

List<int> Ids = pdt.Select(row => row["Id"]; return Convert.ToInt32(r));
Run Code Online (Sandbox Code Playgroud)

int[] Ids = pdt.Select(row => row["Id"]);
Run Code Online (Sandbox Code Playgroud)

但似乎没什么用.我很确定这是一个基本问题,请帮助新手.

.net c# linq ado.net .net-4.0

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

每天只获得TSQL中的多个条目的最后一行

我有一张桌子,类似于:

Id        Name        EnteredOn                    Percentage
`````````````````````````````````````````````````````````````
01        person1     2011-03-09 17:29:35.683      56.29
02        person1     2011-03-09 17:29:35.731      76.29
03        person1     2011-03-09 18:15:78.683      56.29
04        person1     2011-03-10 17:29:35.683      56.29
05        person1     2011-03-10 16:29:31.683      56.29
06        person1     2011-03-11 17:29:35.683      56.29
Run Code Online (Sandbox Code Playgroud)

总结上面的表格,有3排了一天092行白天10.

现在,我只想选择最新的 - 每行一行.
(一行为9,一行为10,一行为11)

由于时间戳,我不能使用distinct.我不能分组并使用:

CAST(CONVERT(FLOAT, EnteredOn) AS INT)
Run Code Online (Sandbox Code Playgroud)

因为当我选择EnteredOn字段时,它会抱怨它没有分组.我无法合并distinct(cast..date...)因为我无法获得正确的语法.

我如何选择 - 只有Name,EnteredOn,Percentage字段与每天不同?

提前谢谢了.

t-sql sql-server sql-server-2008

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

检查是否已从c#中的下拉列表中选择了值

我在asp.net环境中有3个下拉框(组合框).它们都是可选的,所以如果用户选择了任何东西,我正在更新数据库,如果根本没有选择任何东西,我仍在使用空值更新数据库.

我试着这样做:

 int? CountryId = Convert.ToInt32(ddCountries.SelectedItem.Value);
Run Code Online (Sandbox Code Playgroud)

我希望如果没有选择null,将在CountryId中插入null,而是抛出异常.

我试图搜索ddCountries.isSelected(或类似的东西),但它显然不存在..

那么如何确定是否在下拉框中进行了选择? - 通过c#代码.

非常感谢

ps:我有一个想法 - 我把每个下拉框放在一个try ... catch块中,如果出现异常,手动将变量设置为null ...但我不确定这是最好的方法!

c# selecteditem dropdownbox

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

如何在sql server 2008中的exec语句中使用replace

我有一个存储过程,例如,"call_Me",参数很少:

Declare @Greet varchar(100) = 'Hi ||User||'

Exec Call_Me 1,'something', @Greet --parameters: bit, string, string
Run Code Online (Sandbox Code Playgroud)

在通话期间,我希望能够更换

||User||
Run Code Online (Sandbox Code Playgroud)

咬别的东西.通常,在select语句中,我会这样做:

select 1, 'something', Replace(@Greet, '||User||', u.Username) from UserTable
Run Code Online (Sandbox Code Playgroud)

哪个工作正常,但今天,我第一次尝试在exec语句中使用它,错误说它期待选择,我尝试在每种可能的(和明智的)方式添加select但它似乎没有成功.

如何在执行语句调用期间使用替换?

提前谢谢了!

sql stored-procedures replace exec sql-server-2008

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

从c#中的Dataview排序后选择前N行

我有一个10行的DataTable,其中一列是随机编号为1到10的列.我想对它们进行排序.通常,我这样做:

DataView Dv = new DataView(dtPost, "", "views desc", DataViewRowState.Unchanged);
repeater.DataSource = Dv;
repeater.DataBind();
Run Code Online (Sandbox Code Playgroud)

现在,我只想绑定此Dataview中的前5行.如果我试试这个:

DvPopBlogs.Table.Rows.Cast<System.Data.DataRow>().Take(5);

OR

DvPopBlogs.Table.AsEnumerable().Take(5); //this usually works if sorting wasnt necessary
Run Code Online (Sandbox Code Playgroud)

它工作正常,但dataView完全忘记了排序,只从顶部选择了5行.

我也尝试过所有的DataViewRowStates.排序后如何选择前5行?

我好像没想到了!请帮忙!

c# dataview

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