传递值和临时保存值......使用会话、隐藏字段、查询字符串还是其他?
这可能是一个基本问题...但是我只是在选择解决方案而没有给它太多... 考虑一个形式网格的页面:/FormList.aspx 选择编辑表单的地方将用户重定向到一个页面:/FormEdit.aspx?Id=2 我通常可以在查询字符串中传递值,因为我检查了ID是否有效的Formedit代码.但是,哪种传递值的最佳方法是:会话或查询字符串?或其他? 用户正在编辑表单...我通常会暂时保存ID(以免再次从URL获取它).在用户表单版中,存储该值的最佳方法是什么?在会话中还是在隐藏的字段中?或其他? (当我想存储一个临时数据表时,我相信我只能使用会话,但是当它是整数值时...) 事先感谢您的建议:) 解决方案 我建议不要使用Session可以轻松,快速存储并在查询字符串或隐藏的表单字段中进行检查;您似乎在这里谈论的信息非常适合查询字符串. 请注意,Session有人尝试在不同的选项卡中一次编辑多个表单时可能会引入错误.当他们保存一个时,采用的Sessio
10 2024-04-26
编程技术问答社区
如何分别获得网址和其中包含的产品代码
我有一个邮件,我在其中发送HTML页面作为邮件正文. HTML页面有一些链接.我在这里做的是识别这些链接,并用指向我的页面的链接替换这些链接,并将链接作为查询字符串中的参数以及我在文本框中输入的参数"用户名".这是代码 - StreamReader reader = new StreamReader(Server.MapPath("~/one.html")); string readFile = reader.ReadToEnd(); Regex regx = new Regex("(?
20 2024-04-26
编程技术问答社区
Datatables.net 和 asp.net core WebApi 获取搜索[值]
我正在尝试使用ASP.NET Core webapi-controller中的Datatables.net中的服务器端处理. dt将HTTP-GET发送给控制器,其中一些给定参数如下所述: serverside-description 我现在的问题是如何在控制器中获取搜索[值]字符串参数的值. 这是发送到控制器的值" HAL"的参数: 但是,如您在这里所看到的,搜索的价值为null. 所有其他参数都填充在我的控制器中. 所以我认为问题是此搜索** [value] ** - thing. 我该如何告诉控制器读取此参数? 正如您在第二个屏幕截图中看到的那样,我也试图定义的是从中获取参数. 但是[fromheader] nor [fromquery]有效. 感谢您的帮助和建议. 帕特里克 解决方案 我已经弄清楚了如何解决它. 我只是使用httpcontext类来获取名为" search [value]"的查询. 喜欢: var se
2 2024-04-26
编程技术问答社区
将对象序列化为 URL 参数字符串-包括嵌套对象的属性
我有一个包含一个类型的属性的类是另一个类.例如: public class Outer { public string SomeStringProperty { get; set; } public Inner SomeClassProperty { get; set; } } public class Inner { public string InnerProperty1 { get; set; } public string InnerProperty2 { get; set; } } 我想将Outer类的实例转换为URL查询字符串,并包括嵌套Inner类中的属性. 例如,给定一个Outer的实例,例如: Outer toSerialise = new Outer { SomeStringProperty = "MyOuterValue", SomeClassProperty = new Inner
4 2024-04-26
编程技术问答社区
无法从查询字符串中读取#
在我的应用程序中,用户可以更改查询字符串值,对于我们支持所有特殊字符的关键之一. 当我使用以下代码读取查询字符串 时 Request.QueryString["key"] #之后的所有字符都被修剪了. 我们不能支持所有特殊角色?有其他选择吗? 谢谢 解决方案 url的哈希部分或 fragment distififier 因此,不会发送到服务器.如果您想跨哈希字符发送,则需要对其进行编码,即%23. 其他解决方案 用%23 替换您的哈希符号 这只是编码哈希符号.
4 2024-04-24
编程技术问答社区
具有查询字符串值的asp链接
我有一个像这样的链接中包裹的名称列表 ,但它行不通.当我在URL中单击它时出现: Default.aspx?id= 我该如何解决? 解决方案 有错字.那只是后背. 其他解决方案 尝试像文本一样换二次引号 'Default.aspx?id=' 而不是 "Default.aspx?id=
8 2024-04-24
编程技术问答社区
我是否应该使用OAuth来跨服务器传递数据,从JavaScript到C#?
我需要将数据传递到在私人/安全环境(即非公共)中运行的JavaScript传递到公共网站上的ASP.NET页面.我目前正在尝试的方法是(大致): JavaScript(Inc.SHA256.JS): var key = "myVeryLongAndUnguessableKey&#^@23981238#&#&!*"; var nonce = ""; var expiry = new Date().getTime(); var data_to_pass = "name1=value1&name2=value2&name3=value3"; var concatStr = key + nonce + expiry + data_to_pass; var hashed = sha256_digest(concatStr); var requestURL = "http://myPublicServer/myscript.aspx
4 2024-04-23
编程技术问答社区
为什么Request.QueryString["path"]会将所有的+号转换为空格?
我有这样的JavaScript代码: function OnRequestComplete(result) { // Download the file //Tell browser to open file directly alert(result); var requestImage = "Handler.ashx?path=" + result; document.location = requestImage; } 和handler.ashx代码是这样的: public void ProcessRequest(HttpContext context) { Context = context; string filePath = context.Request.QueryString["path"]; filePath = context.Server.MapP
24 2024-04-23
编程技术问答社区
回贴时清除查询字符串
简单的问题,但我不知道该怎么做.我有一个带有gridview的页面,该页面最初带有Querystring. 获得Querystring值后,我不需要Querystring,因为我使用dropdownlist的值来填充GridView. 我怎么能摆脱它? 寄回尚未清除,它只是不断标记. 我尝试了request.querystring.clear,但会得到"读取"错误. 我将非常感谢您可以为我解决这个问题的任何帮助. 编辑1 using System; using System.Configuration; using System.Data; using System.Data.Odbc; using System.Globalization; using System.Threading; using System.Web.UI; using System.Web.UI.WebControls; using System.Reflection;
12 2024-04-23
编程技术问答社区
传递给WCF服务的可选查询字符串参数
我想知道如何使用: string limit = WebOperationContext.Current.IncomingRequest.UriTemplateMatch.QueryParameters["Limit"]; 在我的WCF中,在此方法中: CityNewsList GetNewsByCity(string DeviceType,string id,string limit); tere'deviceType'和'id'是默认参数,我想要的是"限制",因为可选参数意味着用户可以选择传递此参数,他可以通过或无法传递此参数. 想要使用限制为: if (limit == some value) { //do this. } if (limit == null) { // do this. } 我浏览了许多链接,但我没有在WCF中使用它. 或者如果有人可以告诉我如何在WCF服务中进行参数可选. 解决方案 因此,实际上您
22 2024-04-22
编程技术问答社区
如何在WP7中拆分URI?
是否有一种方法可以在WebBrowser控件中使用查询参数,还是必须手动分解字符串?例如: http://www.mysite.com?paramter=12345 我只需要访问参数的值即可.我知道在使用XAML页面时,我们具有Querystring属性.使用网页有类似的东西吗? 解决方案 我不记得我从哪里得到的. public static class UriExtensions { private static readonly Regex QueryStringRegex = new Regex(@"[\?&](?[^&=]+)=(?[^&=]+)"); public static IEnumerable> ParseQueryString(this Uri uri) { if (uri ==
14 2024-04-21
编程技术问答社区
将%E1转换为%ufffd的查询字符串
我有一个像以下 的URL http://mysite.com/default.aspx?q=%E1 其中%E1应该是á.当我从C#页面打电话Request.QueryString时,我会收到 http://mysite.com/default.aspx?q=%ufffd 它对任何重音角色都这样做. %E1, %E3, %E9, %ED等.所有这些都以%ufffd的速度传递.正常编码值(%2D,%2E,%27)都正确传递. 配置文件在全球化部分中已经具有responseEncoding/requestEncoding设置为UTF-8. 如何读取正确的值? 请注意,我不是生成查询字符串的人,我无法控制它. 解决方案 á的确被编码为您可以在重音字母上通过称为Wikipedia条目进行验证,例如 http://http://en.wikipedia.org/wiki/%C3%81 更新: 您的问题有两个分. 首先:如何将Unicode
20 2024-04-21
编程技术问答社区
有没有一种简单的方法可以在Windows Phone中从URI获取查询字符串参数?
我目前正在使用一种自定义URI计划,以使用OAuth验证用户.为此,我需要从查询字符串中获取某些参数的值. 有没有一种简单的方法来获取此信息?还是我唯一使用Regex或其他字符串操纵的选择? 我以前已经找到了诸如parequerystring之类的内容,但是这些内容包含在Windows Phone上的库中. 解决方案 经过大量搜索,我以一种简单的方法降落.只要查询字符串保持相当简单(就像在OAuth中一样),此方法应该起作用. public static Dictionary ParseQueryString( string uri ) { string substring = uri.Substring( ( ( uri.LastIndexOf('?') == -1 ) ? 0 : uri.LastIndexOf('?') + 1 ) ); string[] pairs = substring.Split(
10 2024-04-20
编程技术问答社区
关于asp.net中的查询字符串需要帮助
我有一个页面create-quote.aspx.我想以不同的模式打开此页面,具体取决于是否存在querystring参数. 我的问题是我应该检查哪个事件,是否有querystring参数. 我认为,应该是预先启动的,你怎么说. 解决方案 可能的最佳选择是在page_load事件上处理它们: Library/MS178472.aspx#LifeCycle_events 其他解决方案 你正确.您应该在启动事件中检查查询.在初始化之前,有一个启动fase创建请求en响应对象. 参考: http://msdn.microsoft/library/ms178472.aspx 其他解决方案 我会在page_load事件中检查是否: Page_Load { if(!Page.IsPostback) { if(Request.QueryString["id"] != null) { // do whatever
6 2024-04-20
编程技术问答社区
asp.net中的querystring
如何在asp.net中使用querystring. 解决方案 这取决于您所指语言的确切查询.但是... Request.QueryString["MyValue"]; http://msdn.microsoft.com/en-us/library/system.web.httprequest.querystring.aspx 其他解决方案 良好的文章涉及查询字符串 asp.net客户端状态管理 - 查询字符串 使用querystring在页面之间传递变量 其他解决方案 Request.QueryString["StringValue"];
6 2024-04-20
编程技术问答社区
在MVC动作中隐藏查询字符串
我想将Querystring隐藏到控制器的操作中. 在我的应用程序方案中,类似的东西: 1) 我已经向新窗口打开了新的动作: var check="Particular String" var url = rootUrl("Home/Preview?Docs=" + check); window.open(url, '_blank'); 2)在控制器的侧面,我已经在控制器的操作中使用了一些代码: public ActionResult Preview(string Docs) { TempData["Docs"] = Docs; return RedirectToAction("UnInvoicedPreview"); } 我的查询:: 1)打开新窗口时,它在开始中显示了查询字符串(当它不重新定向到另一个动作时,上升). 2)我不想证明Querystring在URL中.
22 2024-04-20
编程技术问答社区
在 AspNet Core 中解析空查询参数
如何处理Aspnet Core中的空查询参数? 假设我们有一个查询 ?key1=foo1&key1=foo2&key2=&key3=null 解析它时,我希望在解析此URL时具有某种字典>: key1:[" foo1"," foo2"]这应该是同一键下的多个值 key2:[""]这应该是一个空字符串 key3:[" null"]据我所知,这应该是一个字符串 我的问题是:我应该如何处理null查询参数? 注意:我根本无法定义查询参数,并假定不存在查询参数为null.但是我认为,如果需要,则应将null视为显式查询参数的有效值. 根据此线程: ? 标准是通过编码的空值:请参阅所以,如果我想传递无效值,我应该做类似:?key1=foo1&key1=foo2&key2=&key3=%00 的事情 问题是我不知道该如何解码,以便%00被解析为零值. 我尝试了以下内容: public Dictionary
14 2024-04-20
编程技术问答社区
使用c# lambda将NameValueCollection转换为querystring是否有效?
在研究如何将名称valuecollection转换为Querystring时,我遇到了不同的方法.我很好奇较短的lambda语法是否尽可能高效. public static String ConstructQueryString(NameValueCollection parameters) { List items = new List(); foreach (String name in parameters) items.Add(String.Concat(name, "=", System.Web.HttpUtility.UrlEncode(parameters[name]))); return String.Join("&", items.ToArray()); } private static string JoinNvcToQs(NameValueCollection qs) { return string.Join("&", A
22 2024-04-18
编程技术问答社区
Request.Url.Query和Request.QueryString之间有什么区别?
我一直在跟踪URL重写应用程序上的错误.该错误是在Querystring中的某些Decritic字符上作为编码问题. 基本上,问题是基本上是/search.aspx?search = he树nek被" search = he%c5%C5%99m%c3%c3%a1nek" 重写. 正确的值(使用一些不同的工作代码)是对Querystring的重写,为" search = He%U0159M%U00E1nek" 注意两个字符串之间的差异.但是,如果您张贴两者,您会发现编码的URL复制相同的字符串.直到您使用context.predrite函数,编码都不会.损坏的字符串返回"heåmãnek"(使用request.querystring [" search"]和工作字符串返回'Heùmánek'.此更改发生在调用重写函数后发生. 我使用request.querystring(work)和另一个使用request.url.query(request.url返回uri实例)将
10 2024-04-18
编程技术问答社区
URL Querystring-查找、替换、添加、更新值?
,我们从另一家公司的项目的一部分继承了一些C#代码,该公司确实会根据需要修改现有查询字符串,更改项目值,添加新参数等.然而,问题是该代码充其量是错误的,最终在查询字符串中复制项目,而不是正确更新它们.该代码在第一个通行证上起作用,但在其他调用中,重复问题变得显而易见. ex:mypage.aspx?startdate = 08/22/09&startdate = 09/22/09 ,如果已经存在新值,则不用重复其需要更新的项目,或者如果还没有添加. 是否有C#类或一组用于处理查询字符串的功能,允许一种简单的手段来访问和更新/添加围绕这些问题的参数,而不是现已与代码一起使用的盲目添加方法?这需要能够处理可能始终存在或可能不存在的多个参数,并在后续呼叫中添加和更新. ,我们会尽快使用现有的逻辑,而不是在可能的情况下重新创建某些内容,以便以半标准的方式快速解决此问题,以实现将来的可维护性和重复使用. 是的=" noreferrer"> HttpUtility.Pars
16 2024-04-18
编程技术问答社区