Tag: asp.net

从静态访问ASP.NET控件(JS ajax调用)

我有一个ASP.NET WebSite和一个自定义控件(我们称之为myControl)。 我需要用AJAX在这个控件上调用一个方法。 我发布了从JavaScript(jQuery)到C#WebMethod的ajax调用。 这工作正常,但我无法在静态WebMethod中访问myControl。 任何想法如何解决这个问题? 简短版本:从JS到AJ的AJAX调用WebMethod工作 – > *这里(在这个方法中)我需要在我的自定义控件上调用一个方法,由于静态方法类型*而无法访问该方法 [WebMethod] public static List GetListItems() { // CAN’T GET TO MY CONTROL – need to return myContorl.Items; return null; }

Windows身份validation并通过数据库添加授权角色 – MVC asp.net

我是mvc4 asp .net的新手,并且与身份validation和授权相混淆。 我们的内部网站从Windows身份validation中获取用户名(HttpContext.Current.User.Identity.Name),如果用户名存在以及用户具有什么角色,则检查数据库。 我想使用全局[Authorize]属性和角色来访问控制器。 任何人都可以帮助我如何开始。 现在,我有一个函数,它传递用户名并从数据库中获取用户数据和相关角色,查询数据被添加到模型中。所以,我使用此函数来访问网站,但我想使用相同的在不查询db的情况下检查所有控制器和视图的数据。

客户端和服务器无法通信,因为它们没有通用算法

我有一个C#PayTrace网关的问题。 下面的代码工作正常,直到昨天我认为由于Poodle Exploit而关闭了SSL3。 运行下面的代码时,我们得到以下消息。 远程服务器已强制关闭连接。 在对该问题进行一些研究之后,我们确定由于我们的IIS Server 7.5配置为仍使用SSL3,因此C#默认为SSL3,PayTrace会强行关闭连接。 然后,我们从服务器中删除了SSL3。 然后导致以下错误: 客户端和服务器无法通信,因为它们没有通用算法。 我的猜测是,在删除SSL 3后,我们需要在服务器上安装额外的SSL算法。 我们的IT人员声称TLS 1.1和TLS 1.2正在运行,ASP.NET现在应该默认为那些。 但我觉得我们还需要在服务器上安装其他东西,我不了解SSL算法,所以我不知道从哪里开始。 var postUrl = new StringBuilder(); //Initialize url with configuration and parameter values… postUrl.AppendFormat(“UN~{0}|”, this.MerchantLoginID); postUrl.AppendFormat(“PSWD~{0}|”, this.MerchantTransactionKey); postUrl.Append(“TERMS~Y|METHOD~ProcessTranx|TRANXTYPE~Sale|”); postUrl.AppendFormat(“CC~{0}|”, cardNumber); postUrl.AppendFormat(“EXPMNTH~{0}|”, expirationMonth.PadLeft(2, ‘0’)); postUrl.AppendFormat(“EXPYR~{0}|”, expirationYear); postUrl.AppendFormat(“AMOUNT~{0}|”, transactionAmount); postUrl.AppendFormat(“BADDRESS~{0}|”, this.AddressLine1); postUrl.AppendFormat(“BADDRESS2~{0}|”, this.AddressLine2); postUrl.AppendFormat(“BCITY~{0}|”, this.City); postUrl.AppendFormat(“BSTATE~{0}|”, this.State); postUrl.AppendFormat(“BZIP~{0}|”, this.Zip); postUrl.AppendFormat(“SADDRESS~{0}|”, this.AddressLine1); […]

无法确定条件表达式的类型,因为’string’和’System.DBNull’之间没有隐式转换

param7[1].Value = tbLastName.Text.Length > 0 ? tbLastName.Text : DBNull.Value; 为什么这是不可能的,任何建议还有什么可尝试的? 如果20个参数的/ else是不可能的。

可以“EndResponse”提高ASP.Net页面的性能

我的员工页面中有一个Response.Redirect 。 它重定向到Salary页面。 Response.Redirect (“Salary.aspx”); 它工作正常,直到我添加了如下的exception处理。 try { Response.Redirect (“Salary.aspx”); } catch(Exception ex) { //MyLog(); throw new Exception(); } //Remaining code in event handler 这导致了一个新的exception,说“线程被中止”。我发现通过将重定向的endResponse设置为false可以避免这种情况。 Response.Redirect(url, false); Context.ApplicationInstance.CompleteRequest(); 新exception的解释:它总是抛出exception但由框架处理。 因为我添加了一个try..catch它被捕到了(我正在抛出一个新的exception) 注意: CompleteRequest确实绕过了其他HTTPfilter和模块,但它不会绕过当前页面生命周期中的其他事件 注意:Response.Redirect将此exception抛出到当前页面的结束处理。 ASP .Net本身处理此exception并调用ResetAbort继续处理。 题 “将endResponse设置为false”是否可以提高性能,因为不会抛出exception? “将endResponse设置为false”是否会降低性能,因为页面生命周期事件未终止? 陷阱 如果将endResponse设置为false ,则将执行eventhandler中的剩余代码。 因此,我们需要对剩余代码进行if检查(检查:是否未满足重定向条件)。 参考 为什么Response.Redirect导致System.Threading.ThreadAbortException? ASP.NETexception“线程被中止”导致方法退出

在新标签页中打开url

我有一个url Response.Redirect(“~/webpages/frmCrystalReportViewer.aspx?VoucherNo=” + txtVoucherNo.Text + “&VoucherDate=” + txtVoucherDate.Text + ” &strUserCode=” + strUserCode.ToString() + “&strCompanyCode=” + strCompanyCode.ToString() + “&formName=frmPaymentVoucher”); 我想在浏览器的新选项卡中打开此URL。 我尝试下面的代码…… string pageurl = “~/webpages/frmCrystalReportViewer.aspx?VoucherNo=” + txtVoucherNo.Text + “&VoucherDate=” + txtVoucherDate.Text + ” &strUserCode=” + strUserCode.ToString() + “&strCompanyCode=” + strCompanyCode.ToString() + “&formName=frmPaymentVoucher”; Response.Write(“”); Response.Write(“window.open(‘” + pageurl + “‘,’_blank’)”); Response.Write(“”); 我也试过下面 string pageurl = “~/webpages/frmCrystalReportViewer.aspx?VoucherNo=” + […]

使用Enumerable.OfType ()或LINQ查找特定类型的所有子控件

存在MyControl1.Controls.OfType()仅搜索初始集合,不进入子节点。 是否可以使用Enumerable.OfType()或LINQ查找特定类型的所有子控件而无需编写自己的递归方法? 像这样 。

FileUpload到FileStream

我正在与HttpWebRequest一起发送文件。 我的文件将来自FileUpload UI。 在这里,我需要将文件上传转换为文件流,以便与HttpWebRequest一起发送流。 如何将FileUpload转换为文件流?

限制IP地址访问的最佳方法是什么?

对于ASP.NET C#应用程序,我们需要根据IP地址限制访问。 完成此任务的最佳方法是什么?

MvcSiteMap生成菜单而不会弄乱面包屑

我正在配置我的asp.net mvc 5应用程序以使用MvcSiteMap库。 所以,我可以成功配置面包车。 但是,菜单的模板比面包屑更复杂。 我有菜单的胡子版本(我没有显示ul标签): class}}>{{! print class name (active, open, etc) if it exists }} submenu?}}> {{#icon}}{{/icon}} {{#level-1}} {{/level-1}} {{#level-2}}{{! if level-2 and no icon assigned, use this icon}} {{^icon}}{{/icon}} {{/level-2}} {{title}} {{#badge}} tooltip}}>{{{badge}}} {{/badge}} {{#label}} label-title}}>{{{label}}} {{/label}} {{#level-1}} {{/level-1}} {{#submenu?}}{{/submenu?}} {{#submenu?}}{{! if we have submenu items, print them recursively }} {{#submenu}} {{> […]