我在更新面板下的页面中编写了以下代码.
protected void myGrid_RowCommand(object sender, GridViewCommandEventArgs e)
{
try
{
if (e.CommandName =="EditNames")
{
long lSelectedName = Convert.ToInt64(e.CommandArgument);
Session["SelectedItem"] = lSelectedName;
Response.Redirect("EditItem.aspx");
}
else if (e.CommandName =="DeleteNames")
{
long lSelectedName = Convert.ToInt64(e.CommandArgument);
ValidName.DeleteItem(lSelectedName);
ScriptManager.RegisterStartupScript(this, GetType(), "Key", "alert('Name deleted sucessfully')", true);
}
}
catch (System.Threading.ThreadAbortException)
{
}
catch (Exception ex)
{
Error handling code...
}
}
Run Code Online (Sandbox Code Playgroud)
在这里,我在重定向时遇到线程中止异常.但是,我通过使用错误处理程序解决了它System.Threading.ThreadAbortException.
但我不确定为什么在重定向时出现错误.即使我解决了这个问题,我想知道我编码的方式是否有任何错误,或者是否有任何方法可以阻止错误触发.
给你的意见......
请注意,该页面位于AJAX UPDATE PANEL下.
我在尝试从C#应用程序执行可执行文件时需要帮助.
假设路径是cPath,EXE是HHTCtrlp.exe,必须传递的参数是cParams.
我该怎么做?
路径是变量的原因是要运行3个不同的EXE文件,路径将根据运行的路径而变化,与参数字符串相同.
任何帮助将不胜感激.
我们目前正在开发一个应用程序,要求我们生成报告.我们的直接选择是使用SSRS.在学习完教程后,我们成功完成了所有报告的设计.但是,我不清楚如何部署SSRS项目以在GUI环境中显示它们.
我的问题是:
请对这些方面做任何澄清.
我知道如何创建报告,但我正在努力解决SSRS的基本概念.IE我需要有关如何在生产环境中进行设置的更多信息.
我正在我的asp.net MVC Web应用程序中实现jqgrid.
在我的网格中,我有两列编辑和删除.仅当用户以管理员身份登录时,删除才可见.
我们如何在jqgrid中动态隐藏.show列.我有一个会话变量来检查登录用户是否是管理员.
我在javascript中访问该变量.但是,不知道如何在jqgrid中隐藏/显示列
请帮忙..
我刚开始学习ASP.NET MVC中的ViewModel.所以,我想实现一个示例如下:
商业实体
public class AddModel
{
public int a { get; set; }
public int b { get; set; }
public int Add()
{
return (this.a + this.b);
}
}
Run Code Online (Sandbox Code Playgroud)
添加ViewModel
public class AddViewModel
{
public AddModel addModel;
public int Total { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
调节器
public class AddController : Controller
{
[HttpPost]
public JsonResult Add(AddViewModel model)
{
int iSum = model.addModel.a + model.addModel.b;
model.Total = iSum;
return Json(model);
}
public ActionResult Index()
{
return View();
}
} …Run Code Online (Sandbox Code Playgroud) 我有一个需要从数据库中选择作业并需要处理它的Windows服务.
在这里,每项工作都是一个扫描过程,大约需要10分钟才能完成.
我是任务并行库的新手.我已经按以下方式实现了示例逻辑:
Queue queue = new Queue();
for (int i = 0; i < 10000; i++)
{
queue.Enqueue(i);
}
for (int i = 0; i < 100; i++)
{
Task.Factory.StartNew((Object data ) =>
{
var Objdata = (Queue)data;
Console.WriteLine(Objdata.Dequeue());
Console.WriteLine(
"The current thread is " + Thread.CurrentThread.ManagedThreadId);
}, queue, TaskCreationOptions.LongRunning);
}
Console.ReadLine();
Run Code Online (Sandbox Code Playgroud)
但是,这创造了很多线程.由于循环重复100次,因此创建了100个线程.
创建那么多并行线程是正确的方法吗?
有没有办法将线程数限制为10(并发级别)?
我在我的ASP.net MVC Web应用程序中实现Jqgrid.我有这样的数据:
SID SNAME CITY
1 ABC 11
2 XYZ 12
3 ACX 13
4 KHG 14
5 ADF 15
6 KKR 16
Run Code Online (Sandbox Code Playgroud)
和另一张桌子
CID CNAME
11 Chennai
12 Mumbai
13 Delhi like this
Run Code Online (Sandbox Code Playgroud)
但是,在网格中我想显示如下:
SID SNAME City
1 ABC Chennai
2 XYZ Mumbai
3 ACX Delhi
4 KHG Banglore
5 ADF Hyderabad
6 KKR Kolkatta
Run Code Online (Sandbox Code Playgroud)
我无法使用join,因为类结构是这样的:
Class Student
{
long sid,
string sname,
long city
}
Run Code Online (Sandbox Code Playgroud)
所以,当我从数据库中读取时,我得到的城市ID不是城市名称.
但是,我想在网格数据中向最终用户显示城市名称而不是城市ID
我需要一些像lookup函数这样的东西,以便在将数据绑定到jQgrid之前,城市id将与城市名称映射并显示它而不是显示ID
我没有找到办法完成这件事.
请帮忙..
The controller method i am …Run Code Online (Sandbox Code Playgroud) 我正在开发一个asp.net mvc 3.0应用程序.在单元测试我的控制器中的一个动作方法时,我收到了一个错误.
如何模拟: Request.Params["FieldName"]
我已经包含了Moq框架,但不确定如何传递价值
这是我的代码...请建议......
var request = new Mock<System.Web.HttpRequestBase>();
request
.SetupGet(x => x.Headers)
.Returns(
new System.Net.WebHeaderCollection
{
{"X-Requested-With", "XMLHttpRequest"}
});
var context = new Mock<System.Web.HttpContextBase>();
context.SetupGet(x => x.Request).Returns(request.Object);
ValidCodeController target = new ValidCodeController();
target.ControllerContext =
new ControllerContext(context.Object, new RouteData(), target);
Run Code Online (Sandbox Code Playgroud) 我正在研究ASP.net MVC 3.0应用程序.我使用的MSTest一起Moq进行单元测试.我已经为我的控制器编写了所有测试方法并运行了那些测试,结果很成功.
现在,我怀疑我是否已经正确地进行了单元测试.因为,几乎我的大多数控制器操作都包含数据库调用.
我不嘲笑他们,我只是嘲笑Session和Request使用Moq的对象.
是否真的有必要模拟数据库调用,因为单元测试意味着测试单个代码单元?我认为带有数据库调用的单元测试控制器违反了上述声明.
如果是这样,任何人都可以解释我如何模拟数据库调用吗?我没有使用任何实体框架.
Updated2:
[httppost]
public void AjaxSave(Model m)
{
m.update(); // Database call
}
Run Code Online (Sandbox Code Playgroud) 我在visual studio有一个工作网站的网站项目.我可以毫无问题地查看所有页面.
现在我从另一个Web应用程序项目复制了2个文件:search.aspx search.aspx.vb
search.aspx源代码段
<%@ Page EnableViewState="true" EnableEventValidation="false" MetaDescription="<%$Resources:metadescription%>" Title="<%$Resources:pagetitle %>" Language="VB" MasterPageFile="~/main.master" AutoEventWireup="false" Inherits="search" Codebehind="search.aspx.vb" %>
<%@ MasterType VirtualPath="~/main.master" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
Run Code Online (Sandbox Code Playgroud)
search.aspx.vb源代码段
Imports System
Imports System.Net
Imports System.IO
Imports GlobalFunctions
Imports System.Xml
Imports System.Collections.Generic
Imports System.Collections
Imports System.Linq
Imports System.Resources
Imports generalMethods
Imports System.Globalization
Partial Class search
Inherits System.Web.UI.Page
Run Code Online (Sandbox Code Playgroud)
但是当我尝试请求页面时:www.test.com/search.aspx我收到此错误:说明:解析为此请求提供服务所需的资源时发生错误.请查看以下特定的解析错误详细信息并相应地修改源文件.
分析器错误消息:无法加载类型"搜索".
来源错误:
Line 1: <%@ Page EnableViewState="true" EnableEventValidation="false" MetaDescription="<%$Resources:metadescription%>" Title="<%$Resources:pagetitle %>" Language="VB" MasterPageFile="~/main.master" AutoEventWireup="false" Inherits="search" Codebehind="search.aspx.vb" %>
Line 2:
Line 3: <%@ MasterType …Run Code Online (Sandbox Code Playgroud) c# ×7
asp.net-mvc ×5
asp.net ×2
jqgrid ×2
moq ×2
unit-testing ×2
.net ×1
executable ×1
mstest ×1
request ×1
show-hide ×1
viewmodel ×1