现在我的一个asp.net应用程序的使用已经显着增加,出现了两个奇怪的问题,这些问题非常罕见,而且我无法重现.
我对如何调试和解决这些问题感到茫然.
这是两个例子:
我的一个aspx页面将会话状态值重置为0 !IsPostBack(是true).但是,我的某个特定位置的用户经常在该页面不是回发时进入该页面,并且会话状态值不会在他的笔记本电脑上重置.(我根据应用程序随后的行为而不是在调试模式下运行这个声明)但是当我坐在他旁边的笔记本电脑上使用相同的浏览器在我的笔记本电脑上运行应用程序时,代码正常工作并且会话状态被重置在同一个互联网连接上同时.当这个用户在他的笔记本电脑上运行应用程序时,他有更好的互联网连接,他没有经常出现问题.
我的应用程序中的一个aspx页面在运行将数据保存到的代码后运行server.transfer DB.在server.transfer之后几乎所有的时间文本框都包含它们的默认值(因为它们应该如此!isPostback==True),但文本框中包含前一个值的时间大约是1%.我知道已经有一个往返服务器,因为数据已经保存.执行相同操作的相同用户使用相同的浏览器在同一台PC上会出现此问题.因此,99%的时间它正常工作,1%的时间它们做同样的事情并且它无法正常工作.
如果它们似乎是随机出现的,我怎么才开始试图找出造成这些问题的原因?
我怀疑互联网连接的质量是问题,因为它是一个变化的变量,但这些信息如何帮助我?
通过在调试模式下运行我的应用程序,我不能调试这些问题.
我正在使用Asp .Net 3.5,C# 3.5该应用程序运行IE 6-8.(IE 8在兼容模式下)
我看到很多广告/网站通过与谷歌并排设置,并且有一个标题如下:这是你的网站/这是他们的网站,从而惹恼了混乱的用户界面.
这一切都非常有趣,但实际上,Google只需要一个文本框和一个提交按钮.
当您的页面是数据输入表单,例如订单输入表单或新员工输入表单时,该怎么办?
我想不出一种方法来构建一个需要大量数据输入的表单,而没有杂乱的文本框,下拉列表,复选框等.
当然,我可以使用每页只放一个文本框,并有一个50页的数据输入表单或向导,但我认为这不会与最终用户相处得很好.
有人找到了一种方法来创建一个收集大量数据但看起来不丑的数据输入表单吗?
使用aspnet 3.5.
我的aspx文件中有一些javascript函数.
为什么javascript注释会传递给浏览器?它使下载文件不必要地大.
我用的时候
Server.Transfer的( "PageName.aspx");
我被转移到正确的页面,但网址是第一页的网址.
换句话说,比如page1.aspx Server.Transfers to page2.aspx.
呈现page2.aspx,但url读取page1.aspx.
问题是我需要将参数传递给url中的page2,并且params没有通过.
我通过使用来解决它
的Response.Redirect( "PageName.aspx PARM = VAL?");
我一直在使用Server.Transfer,因为我觉得它效率更高.
还有什么区别?使用一个而不是另一个是否有任何其他原因?
到目前为止,我有:
使用Response.Redirect
使用Server.Transfer
有没有办法以C#(3.5)或javascript编程方式将文本添加到剪贴板?客户端机器类型是否有所作为?
编辑:对不起,忘了提到我正在使用asp.net.
我可以在同一视图中使用稍后在SQL Server视图中计算的列吗?
假设我有以下观点:
Select
t1.StartMile, t2.EndMile, t2.EndMile- t1.StartMile as TotMile
from
TableStarts as t1
inner join
TableEnds as t2 on t1.Id = t2.Id
Run Code Online (Sandbox Code Playgroud)
有没有办法编辑视图来执行以下操作
Select
t1.StartMile, t2.EndMile, t2.EndMile - t1.StartMile as TotMile,
TotMile + 30 as EvenMoreMiles
Run Code Online (Sandbox Code Playgroud)
我试过这个并得到错误:
列名称"TotMile"无效
请不要告诉我使用t2.EndMile - t1.StartMile + 30 as EvenMoreMiles.TotMiles在我的实际代码中是一个长例句.
我宁愿不必创建一个中间视图.
我正在使用SQL Server 2005.
加上以后
感谢所有的答案.我会全力以赴.
答案提出了以下新问题:
鉴于有数千行,TotMiles如下所示,给出的答案中哪一个最有效?或者创建中间视图效率最高?
CASE WHEN t .TaskType = 1 and t .StartTime < '1/1/2012'
THEN (tv.EndMile - tv.StartMile )
WHEN NOT (t .Location1_PKey …Run Code Online (Sandbox Code Playgroud) 我在C#3.5中有一个字符串数组:
string [] times = new[] {“08:00 am” , “10:00 am”, “120”} ;
Run Code Online (Sandbox Code Playgroud)
我想创建索引的时间:StartTime,EndTime,ElapsedTime所以,当我的代码:
StartTime= “09:00 am” ;
EndTime= “11:00 am” ;
Run Code Online (Sandbox Code Playgroud)
然后times[0]设置为“09:00 am”等
我可以创建3种方法:
private void StartTime(string time)
{ times[0] = time; }
private void EndTime(string time)
{ times[1] = time; }
private void ElapsedTime(string time)
{ times[2] = time; }
Run Code Online (Sandbox Code Playgroud)
和代码
StartTime("09:00");
Run Code Online (Sandbox Code Playgroud)
但有更简单的方法吗?
我想匹配任何序列或数字,或文字:na.我在用:
"^\d*|na$"
Run Code Online (Sandbox Code Playgroud)
数字正在匹配,但不是na.
我的错是什么?
更多信息:我在aspnet c#中的文本框的正则表达式验证器中使用它.
空白条目没问题.
我在这里错过了什么?
select cast ( ( cast (100 * 39 as decimal ) / 41) as decimal(5,2))
Run Code Online (Sandbox Code Playgroud)
得到95.12的结果
但
declare @percent decimal
set @percent = cast ( ( cast (100 * 39 as decimal ) / 41) as decimal(5,2))
select @percent
Run Code Online (Sandbox Code Playgroud)
结果为95
两个2小数点发生了什么,如何让它们回到变量中?
我希望能够在转移到另一个应用程序时使用相同的Session变量.
Response.Redirect是使用相同的会话还是开始新的会话?
我正在使用c#,aspnet 3.5
使用C#,asp.net 3.5,SqlServer 2005,
试图将一些控制反转与3层架构结合到我当前的任务中.
不知道这是一个好主意还是令人难以置信的愚蠢:
我创建了用户界面层,业务层和数据层.
UI收集4个值,News是业务层类的实例(称之为c),使用4个值初始化它.
然后,UI调用Business Layer类的该实例的方法来保存数据.
Business Layer类方法创建一个tsql字符串,例如
String.Format(@"插入table1(col1,'col2','col3',col4)值({0},{1},{2},{3}); select @@ identity",c.one ,c.date1,c.date2,c.four);
并将字符串传递给数据层中类的int方法.
数据层使用字符串作为ExecuteScalar的CommandText,并将@@ identity返回到业务层.
我会使用相同概念的变体来通过datareader检索数据.
数据量不会很大,这不会是一个高容量的应用程序.
我过去这样做的方法是将在ui中收集的4个值,通过业务层传递给数据层设置sqlparms,将值传递给存储过程等,将它们传递回业务层,等等
architecture design-patterns inversion-of-control n-tier-architecture
asp.net ×5
c# ×5
javascript ×2
sql-server ×2
t-sql ×2
architecture ×1
css ×1
debugging ×1
regex ×1
session ×1
view ×1