public static void insertMessage(string actors, string message_content)
        {
            
   int a = IDU("insert into message (actors,message_content) values ('aaa','bbb');//数据库插入操作
            if (a == 1)//若插入成功
            {
                ??? //创建一个application对象,将message_content保存到此对象中
            }
        }
求各位大虾们讲讲,怎么在“???”处创建这个application啊,因为某种需要,此方法必须得是静态方法!!

解决方案 »

  1.   

    分拆你这个方法,
    插入做成静态,
    返回成功与否的消息,
    创建message做成另外一个非静态方法,
      

  2.   

    此方法确实有可行性。可是怎么去自动触发创建message的那个非静态方法呢?写到Page_Load(object sender, EventArgs e)里虽然能触发,可是我得等插入成功后再创建application对象。还请不吝赐教
      

  3.   


    System.Web.HttpContext.Application[name]=value;不过,Application只是10年前asp程序员转为asp.net程序员的知识(用来与asp兼容)。在asp.net中,你在这个静态类型中定义一个静态变量来保存数据就行了,用不着访问Application集合对象。
      

  4.   

    在这个类中定义一个变量比如说是public static string message_content=null;这就行了。用不着访问Application集合。
      

  5.   

    谢谢sp1234,可我这个demo做的是一个单对单的web版聊天系统,我要把message_content放到一个application对象中,才能确保让其他用户查找到这条信息
      

  6.   

    你定义一个public class AAA
    {
       public static string message_content=null;......
    }
    那么asp.net程序中(任何“其它用户”的会话中)就可以通过AAA.message_content访问到了,不需要使用Application集合。
      

  7.   

    这样也行啊。。我还以为所有用户访问共享资源,只能用application呢。哈哈  我去试试!!!上帝保佑:阿弥陀佛~~!
      

  8.   

    当然啦,这只是一个说明Application集合是个是么东西的说明。真正从应用的角度,你可能需要声明一个List<Content>类型的静态集合变量,这里保存多条Content。而自定义的Content类型应该包括“谁发的消息,发给谁,发送时间,消息内容是什么,消息类型是什么”等多个属性。这是设计问题。
      

  9.   

    用List<Content>类型的静态集合变量,成功了!!而且代码看起来也漂亮多了,,,谢谢“sp1234”,看来.net还真是有好多东西要学习啊,,继续努力中………………
    在此结贴了,多谢大家!!!!