- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是 WCF 的新手,已经在不同的部分进行了一些尝试,但仍然没有找到我最终想要的东西。我想创建一个服务器:我已经完成了我的服务器对象和我的数据契约(Contract),格式如下:
public class SmartShopService : SmartShopInterface
{
private Shopper sh;
private List<ShoppingTripEvaluation> bestTrips;
public SmartShopService() {
sh = new Shopper();
bestTrips = new List<ShoppingTripEvaluation>();
}
// (Various methods go here)
}
客户端是一个 ASP.NET 页面,如下所示:
public partial class Garfield : System.Web.UI.Page {
static GarfieldService.SmartShopInterfaceClient client = new GarfieldService.SmartShopInterfaceClient();
protected void Page_Load(object sender, EventArgs e) {
}
[WebMethod]
public static bool SomeMethod() {
}
[WebMethod]
public static bool SomeMethod2() {
}
}
现在,在这个页面中有无数的表格。例如,假设客户端应该找到 A 和 B 之间的最快路线。它将所有可能的路线存储在服务器上的 List 变量中。只需单击客户端上的按钮即可完成计算。然后,另一个按钮可以显示信息(假设它一次显示它的 block ——用户可以选择查看前 25、前 50、前 100 个结果等)。
我遇到的问题在这里:假设场景用户 A 优化结果 -> 服务器将结果保存在变量服务器端。用户 B 出现并优化结果 -> 服务器现在保存用户 B 的结果。用户 A 查看他的数据——但他实际上正在查看用户 B 的数据!!!
我最终想要的是让每个登录页面的人都有一个特定于他们的唯一服务对象,直到他们离开页面为止。
谢谢。
最佳答案
问题是静态客户端变量。所有网络应用程序 session 将共享同一个客户端实例。即使 Web 应用程序有很多 session 正在进行,它也只有一个与 WCF 服务的 session 。
您应该将其设为页面的私有(private)变量。在 WCF 服务端,确保服务实现类设置为 the Per Call mode所以每个页面实例都会收到自己的服务实例。
关于c# - WCF: session 数据、服务器对象和挫折,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6060371/
我一直在努力让 Eclipse 正常工作,但由于某种原因,我无法安装插件、更新,甚至无法访问市场。在进行了一些研究之后,我发现在大多数情况下这是一个代理问题,但我在一个私有(private)家庭网络上
好吧,我知道我一定遗漏了一些明显的东西。这是示例代码(当在 viewDidLoad block 中执行时,它会静静地崩溃......没有错误输出到调试控制台)。 NSMutableArray *bs
我正在尝试替换/删除这个: [\" 从字符串bump3 NSString *bump5 = [bump3 stringByReplacingOccurrencesOfString:@"[\\"" wi
所以我已经花了几个小时来完成我认为会快速简单的项目,但我无法让它工作!这让我很沮丧,哈哈,我必须接近,但也许我不是。 我将在我的代码中附上注释,解释它应该做什么。本质上它使用私有(private)构造
我正在编写一个 c# 程序,它将启动许多子进程。稍后,我需要通过 ID 检索这些进程,然后将这些进程与存储在字典中的一组进程进行匹配,这些进程在首次创建时添加到字典中。但是,我遇到了一个看起来很荒谬的
我仍在努力弄清楚,为什么我只看到典型的“黑屏”。我只渲染了一个矩形,但什么也没发生。 #include "expwidget.h" #include ExpWidget::ExpWidget(QOb
我有一个 I/O 密集型操作。 我只希望一次最多运行 5 个线程。 我有 8000 个任务要排队并完成。 执行每个任务大约需要 15-20 秒。 我查看了 ThreadPool,但是
我正在尝试学习在 JavaScript 中进行面向对象的编程并严格违反 JSLint。我知道我在非全局环境中使用它(或类似的东西......),但我不知道如何正确地做到这一点。这是我的代码: func
我正在开发一个包含 javascript 图像旋转器的网页,但它需要能够处理不同尺寸的图像。 我用作基础的代码在包含图像的 float LI 外部有一个 DIV,但无论我尝试什么,我似乎都无法让图像全
我是一名优秀的程序员,十分优秀!