gpt4 book ai didi

c# - 有关 ASP.NET 2.0 应用程序设计的问题

转载 作者:行者123 更新时间:2023-11-30 21:13:11 24 4
gpt4 key购买 nike

作为新手-中级 C# 程序员,我的调试问题围绕着 C# 程序设计的最基本元素。我的项目是一个基于网络的计算机化交易系统。使用 (2) 个 API,1 个用于定价,另一个用于订单,我的问题似乎出在代码设计和与多个 session 相关的问题上。

我尝试对所有事件使用委托(delegate)。

我目前关于 Windows 窗体和对象的问题

  1. 这是使用 aspx 页面实例化类对象和事件委托(delegate)的正确方法(或“正确方法”)吗? (我意识到,我的例子常常造成混淆​​而不是帮助)。

    public partial class admin_Admin : System.Web.UI.Page
    {

    private static Downloader dl = null;
    private SendOrderDelegate sendError;

    protected void Page_Load(object sender, EventArgs e)
    {
    if (!Page.IsPostBack)
    {
    if (dl == null)
    {
    Main();
    }
    }
    }

    protected static void Main()
    {
    dl = new Downloader();
    sendOrder = new Steury.Trading.SendOrderDelegate(dl.Order);
    }
    }
  2. 何时以及如何使用 Main() 方法?在具有多个程序(定价、订单、回测、优化)的复杂 Web 应用程序中使用 Main() 的定义是什么,所有程序同时运行并使用不同的 aspx 页面?

我是否对每个 aspx 页面使用上面的 Main(),并再次对每个主类程序使用...Orders.cs、OrderShort.cs、BacktTest.cs、BackTestShort.cs、Optimize.cs、OptimizeShort.cs,我如何将 Main Only 用于登录到定价和订单服务器的 2 个 aspx 页面,然后维护连接到适当类的静态 session 变量?

如您所知,我在这些概念上苦苦挣扎,还没有找到详细介绍非常复杂场景的资源。大多数(如果不是全部)使用非常简单的类示例。我发现这很有用核心 C# 和 .NET http://flylib.com/books/en/4.253.1.1/1/ .

  1. 关于何时使用静态关键字有什么好的建议吗?我应该只将它用于顶级页面吗?我此时不部署多用户项目。

任何其他建议都是有用的,包括建设性的批评。

最佳答案

When and How to use the Main() Method?

你不知道。去掉它。主要功能(您想要在整个网站第一次运行时运行的代码,即应用程序),或者当某个用户第一次访问它时,即 session )被移动到 global.asax。默认情况下,此文件在您的 Web 应用程序项目中,但您可以添加它。

Is this the correct way (or a 'proper way') to instantiate class objects & event delegates

不,不是。虽然 IsPostBack 检查很好(这意味着该页面是否已被用户发布,即他是否单击了您页面上的提交按钮,回发 到同一页)。这里的错误是静态主函数。将每个页面视为一个类(它实际上是一个类),并且系统会为您实例化该类。启动的地方是Page_Init。但是很多人为了简单起见,将其放在 Page_Load 中。这些特殊方法在页面加载时由 ASP.NET 系统自动调用。

Is there any good advice on when to use the Static Keyword?

这并不容易回答。通常,在网页中,您几乎不会使用 static 关键字,原因很简单,因为很多人和用户同时访问您的网页。但是,实用程序类和方法有时可以是静态的。这是一个与普通 Windows 应用程序完全不同的环境,后者通常在 protected 环境中运行。

and have not found a resource that goes into detail for very complex scenarios

有很多关于 ASP.NET 的好书。有些进入非常复杂的场景。但考虑到您当前所处的阶段,我建议您从简单的场景开始。

关于c# - 有关 ASP.NET 2.0 应用程序设计的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6967985/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com