2

我们使用 T4 来生成我们的 .aspx 和 .vb 文件。一切正常 - 但我们经常需要自定义页面上的行为。

但是,我们有时也必须重新生成页面——这有可能会清除原本仍然有效的工作。

我想要这样的设置:

Default.aspx 'which would contain the controls
Default.aspx.vb 'which would bind, load and save data
Default.behaviour.vb '(or something like that) - which would store the behaviour

两个页面都可以引用控件。

这有可能吗?

Stevedog:谢谢你,我怀疑我的错误在代码中会更明显——这是一个例子:

'##in codebehind Default.asp.vb:
'##there is a asp:label called lblTest
Partial Class pages_Default
Inherits System.Web.UI.Page
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        If Not Me.IsPostBack Then
            writeMessage()
        End If
    End Sub

    Partial Private Sub writeMessage()
    End Sub
End Class

'##in codefile Default.behaviour.vb:
Partial Public Class pages_Default
    Inherits System.Web.UI.Page

    Private Sub writeMessage()
        lbltest.Text = "Hello"
    End Sub

End Class
4

1 回答 1

0

是的,您可以为同一个类创建任意数量的部分类,而您提供的示例正是它们的主要目的。部分类中的代码可以访问类其余部分中的所有内容,就好像它们都在同一个文件中的同一个类声明中一样。我对 ASP 或 T4 不是很熟悉,但我无法想象为什么其中任何一个会改变部分类的工作方式。

于 2012-06-15T15:34:18.047 回答