【发布时间】:2012-12-26 09:21:34
【问题描述】:
如您所知,我们在 WinForm 中没有会话。我的项目中有几种形式(客户、服务、操作员……),我从操作员那里获取一些值(操作员姓名、操作员姓氏和头像地址)。我想将这些值存储在运行时的某个位置,并且在需要时,我可以从存储它的位置获取它。
有没有简单的方法可以做到这一点?
【问题讨论】:
标签: c# winforms session data-transfer
如您所知,我们在 WinForm 中没有会话。我的项目中有几种形式(客户、服务、操作员……),我从操作员那里获取一些值(操作员姓名、操作员姓氏和头像地址)。我想将这些值存储在运行时的某个位置,并且在需要时,我可以从存储它的位置获取它。
有没有简单的方法可以做到这一点?
【问题讨论】:
标签: c# winforms session data-transfer
我认为这是一位资深网络开发人员的话。我听到你了,我的朋友。我去过那里...
Web 编程的会话对象只是解决在无状态环境中保存状态问题的一种解决方法。另一方面,winforms 编程没有这个问题。您的应用程序中的对象都保留了它们的状态信息。
关于将信息从一种形式传递到另一种形式:
哪个最好?完全取决于您的业务案例和应用程序逻辑。
【讨论】:
我相信最简单的方法是创建一个class,可以从包含您想要的数据的表单中访问它
示例
// Class1.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace myNameSpace
{
class Class1
{
public static string Name = "";
public static string LastName = "";
public static string ProfilePictureaddress = "";
}
}
使用它,无论何时您想存储或检索数据,您都可以使用myNameSpace.Class1。例如,如果您想存储到Name,您可以使用myNameSpace.Class1.Name = "value";。这会将Name 设置为value。
谢谢,
节日快乐! :)
【讨论】:
你也可以像这样使用项目属性:
//写
Properties.Setting.Default["key"] = value;
Properties.Setting.Default.Save();
//阅读
value = Properties.Setting.Default["key"];
【讨论】: