相关疑难解决方法(0)

如何将静态WebMethods中的数据存储到ViewState中

现在我做了一些研究.我需要将我从ajax调用中检索到的一些数据存储到我的页面上的WebMethod中,然后我可以随时将其重新拉回来.

我一开始认为ViewState是最好的选择.遗憾的是,您无法以非静态方法的方式引用它.即使我将页面的实例存储在ViewState中,我相信它会在方法结束时解除实例化,从而破坏我保存的任何数据.

我需要这些数据用于我在其他WebMethods中进行的数据库调用.

我的aspx页面的C#代码隐藏的基本方法如下所示:

    [WebMethod]
    [ScriptMethod]
    public static string populateModels(string[] makeIds)
    {

    }
Run Code Online (Sandbox Code Playgroud)

因此,例如,我需要保存所选的品牌以便从未来的数据库调用中获取.由于我的大多数盒子都是从数据库中过滤和提取的.

更新:

此代码适用于在静态WebMethods中的SessionState中检索和存储数据.

    [WebMethod(EnableSession = true)]
    [ScriptMethod]
    public static string populateYears(string[] modelIds)
    {

        HttpContext.Current.Session["SelectedModels"] = modelIds;

        string[] makeids = (string[])HttpContext.Current.Session["SelectedMakes"];
     }
Run Code Online (Sandbox Code Playgroud)

c# asp.net viewstate web-services webmethod

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

ajax 会增加还是降低安全性?

我正在创建一个网站,到目前为止它是纯 PHP 的。我在想,既然很少有人没有启用 JavaScript(我想知道为什么!),也许我应该将我的网站创建为一个完全 PHP 的网站,而不使用任何 AJAX。难道是我想错了?

可以确定的是,如果我实施一些 AJAX,是否会增加我的网站被破坏的风险?

我是否应该担心这一点并开始使用 AJAX?

javascript php security ajax

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

检查会话变量(null或不是)会导致Handler类中出现异常

我有一个类似于此线程中描述的情况:
如何在c#中的静态方法中获取会话变量的值?

但是,这里没有静态方法(只是一个继承自IHttpHandler的类)

这是我的代码:

<%@ WebHandler Language="C#" Class="Telerik.Web.Examples.FileExplorer.FilterAndDownloadFiles.Handler" %>

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Text;
using Telerik.Web.UI;

namespace Telerik.Web.Examples.FileExplorer.FilterAndDownloadFiles
{
    [RadCompressionSettings(HttpCompression = CompressionType.None)] // Disable RadCompression for this page ;
    public class Handler : IHttpHandler
    {
        #region IHttpHandler Members

        private HttpContext _context;
        private HttpContext Context
        {
            get
            {
                return _context;
            }
            set
            {
                _context = value;
            }
        }

        public void ProcessRequest(HttpContext context)
        {
            Context = context;
            string filePath = context.Request.QueryString["path"];
            filePath = context.Server.MapPath(filePath);

            if (filePath == …
Run Code Online (Sandbox Code Playgroud)

c# asp.net session httpcontext ihttphandler

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