问题标签 [master-pages]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
asp.net - 如何在“网关”页面中为 ASP.NET 站点设置主题?
我希望能够在网关页面中设置 ASP.NET 主题,它将根据合作伙伴 ID 或类似的东西确定主题。我想我只是将主题名称粘贴在会话中,如果需要,可以从那里获取它。
我很难找到将这段代码放在一个地方的正确位置。
我似乎看不到您可以设置主题的全局位置。您必须为每个页面设置它。
如MSDN中所述,您可以在页面的 PreInit 函数中分配 Theme 属性。
所以我想好吧 - 我会在我的母版页中做到这一点。不幸的是,将完全相同的代码复制到母版页中是行不通的。所以我想 - 嗯,也许母版页不使用这个事件。事实证明这是真的。
我真的不想把这个主题代码放在每个内容页面上。这似乎完全愚蠢。但我还找不到其他方法。MSDN仅描述了将主题应用于页面的两种方法——在 web.config 中或使用 Page.Theme。
我是否必须创建 Page 的子类并让我的所有页面子类化该页面,并覆盖该子类中的 PreInit?我想我一定错过了一些东西,因为我无法想象 MS 真的希望人们在每个内容页面上以编程方式设置主题。
.net - ASP.NET - 从内容页面访问母版页元素
可以从内容页面访问母版页的元素吗?
假设我有从 MasterPage1 继承的 MasterPage1 和 ContentPage1,而 MasterPage1 有一个按钮:Button1。
我可以从内容页面更改该按钮的属性,例如使 Button1 不可见、不活动等吗?我怎样才能做到这一点?
我正在使用.net2.0
c# - 您可以在 .NET 中异步更改母版页的 ContentPlaceHolder 的内容页吗?
从我已经读过的内容来看,这似乎是不可能的,但我想看看是否有人在他们的袖子里有一个秘密的把戏,或者至少是一个明确的“不”。
假设母版页实际上只是供内容页使用的控件,而不是内容页的“母版”。如果我想从一个内容页面转到另一个具有相同母版页的内容页面,我会说
但这会立即导致回发,闪烁页面,这是糟糕的 pre-ajax 做事方式。
在这个当前项目中,我试图看看我是否可以弄清楚如何在母版页上单击按钮时异步更改母版页中 ContentPlaceHolder 的当前内容页。
这可能吗,如果可以,怎么办?
c# - 我可以在加载事件时从 C# 的 div 标记中动态添加 HTML 吗?
请注意,我正在使用母版页,但我可以在页面中找到一个 div 并在其中放入一些 html 吗?谢谢。
asp.net - 如何跨应用程序整合 ASP.NET 母版页?
第一次在这些板上提出问题,希望我能得到一些帮助,这里是:
我正在努力在我的客户上启动 .NET 实践。我们目前有 5 个小型 .NET 应用程序,其中一些已投入生产。它们大多是带有一些数据输入/业务逻辑功能的小型报告片段。这些应用程序中的每一个当前都使用相同的母版页。
我的意思是每个应用程序中都有相同母版页的副本。它们都是基本的网站->WCF->BL->DB 分层应用程序。所以我有 4 个相同母版页的副本,当我对其进行更改时,我必须更改它们。
客户不想将所有这些整合到一个解决方案中。他们喜欢跨站点的应用程序分离。我只是不想继续处理公共元素的多次更新的麻烦(在这些应用程序中会有更多更新)。
代码全部存储在团队基础服务器中。我们也不想将母版页编译成 .dll 并部署它。
任何人都可以就如何在我的多个应用程序中维护这些公共文件(主文件、.css 等)的单个副本提出一些建议。
提前致谢
c# - 使用嵌套母版页
我对 ASP.NET 很陌生,请帮助我更多地了解 MasterPages 的概念。
我有 Site.master,其中包含常见的标题数据(css、meta 等)、中心表单(空白)和页脚(版权信息、联系我们链接等)。
并且我想将项目的第二个母版页使用到子目录中,该子目录将包含 Page_Load 上的 SQL 查询以进行日志记录(整个站点不需要)。
但我有一个问题:页脚不显示。
我的错误在哪里?我是否可以使用第二个母版页作为超级类进行日志记录?
项目页面如下所示:
asp.net - ASP.NET 页面在加载后调用一个额外的 aspx 页面
为了简单起见,我们有几个 aspx 页面...
Page1.aspx - 重置会话信息。
Page2.aspx - 带有结果的搜索表单并设置会话变量。
Page3.aspx、Page4.aspx、Page5.aspx - 需要在 Page2.aspx 上设置会话变量
我们发现,当 Page2.aspx 加载并设置 Session 变量时,Page1.aspx 被调用并重置 Session。但是,Page1.aspx 显示在浏览器中,而不是 Page2.aspx。当我们单步执行代码并在 Page1.aspx 和 Page2.aspx 的 Page_Load 事件中放置断点时,我们才能够发现这种情况发生,并且惊讶地看到 Page1.aspx 在 Page1.aspx 停止处理后立即处理 Page2.aspx服务器。
可能有用的信息...我们确实使用母版页,并且在母版页中有指向 Page1.aspx 的链接。除此之外,我在代码库中找不到任何对 Page1.aspx 的引用。
更新:
可能是由于身份验证?看来当我访问 Page2.aspx 时,服务器可能再次在 Page1.aspx 上进行身份验证?这是典型的吗?
asp.net - 根据所选页面显示不同的标题
我有一个 asp.net 网站,在主要水平导航上有 5 个项目(主页、产品、新闻、关于、联系方式)。
该站点使用母版页,该母版页使用以下方法将页面拆分为页眉、正文和页脚
我希望能够显示不同的标题(包括不同的颜色和图像),具体取决于选择了 5 个导航项中的哪一个。
谁能告诉我在不膨胀页面下载的情况下实现这一目标的最佳方法?
我知道asp.net、html、css、javascript 和vb 的方式,但我不是专家。
sharepoint - 如何强制新网站集继承母版页?
我有一些在 SharePoint 中创建新网站的代码。浏览到新创建的站点时,会引发 File Not Found 错误。如果您浏览到 /_layouts/ChangeSiteMasterPage.aspx,您可以选择一个新的站点母版和系统母版页,并且该站点可以正常工作。这篇 kb 文章完美地描述了我的症状:http: //support.microsoft.com/kb/936908
我的问题是给出的两个(也许三个?)解决方案中,只有一个有效。如果我手动选择新的母版页,它工作正常。第二种解决方法是在新站点上激活发布功能。这并不能解决任何问题。
还有一个建议是将发布功能装订到我用于新站点的站点定义中。就我而言,这是 STS#1(空白站点),装订发布功能并不能缓解我的问题。
任何人都知道如何整理出正确的母版页?
asp.net-mvc - 我应该如何将会话状态集成到 ASP.NET MVC 应用程序中?
我正在寻找有关如何在 ASP.NET MVC 应用程序中使用 Session 的想法?尤其是在使用母版页并试图在不绕过控制器的情况下将数据获取到母版页时。这个问题一开始是我问了很多小问题,但后来我设法将它塑造成一个我还没有实施但有点可行的解决方案。任何反馈将不胜感激。
我提出的解决方案又名“除非有人说停止,否则我将要实施的方案!”
我的模型类继承自 ModelBase——它包含母版页所需的信息(每页只有一个视图),用于显示在标头或页脚中的某些内容,以及基于谁登录的配置驱动设置。
我最好的解决方案如下 - 此处显示“产品页面”:
假设:我在某些时候已经将某些数据卡在会话中 - 例如,可能是
partnerId
通过网关页面进入的,或者是currentLoggedInUserEmail
属性或完全爆炸的对象。我有一个
ModelBase
类,每个模型都从中继承 - 例如ProductModel
继承我有一个
MySiteControllerBase
类(从 Controller 继承) - 它是ProductController
.在我的操作方法中,
ProductController
我使用'new ProductModel()'
. 这个模型类本身对会话或如何填充一无所知ModelBase
。它本质上甚至不知道ModelBase
——它只是继承自它。我的链式构造函数什么都不做(因为我不想传递它Session
)。我覆盖
View(...)
了MySiteControllerBase
所有采用模型参数的重载。我检查该参数是否属于类型ModelBase
,如果是,我填充属性,例如partnerid
和currentLoggedInuserEmail
。幸运的是,因为我在一个继承自我Controller
可以直接访问的类中,Session
所以我可以直接将它们从那里拉出来。
此方法意味着ModelBase
仅由我自动填充on 的属性'return View(model)'
。但是,如果模型ProductModel
需要访问ModelBase
. 它将为空,因为它尚未填充。
这个问题可以通过传递Session
给new ProductModel(session)
which 来解决,然后将它传递给构造函数链到new ModelBase(session)
. 我真的不喜欢那个解决方案,因为我喜欢将模型视为一个非常愚蠢的数据结构,根本不应该知道任何外部数据结构。另一种解决方案可能是直接使用它,如果我发现ProductController
需要消耗其中定义的任何内容ModelBase
,我只需创建一个方法MySiteControllerBase.UpdateModelBase(productModel, session)
来显式填充它ProductController
。我希望那很清楚!
想到的其他问题是:
- 单元测试呢?MVC 中的会话状态是否有任何抽象,或者我应该自己构建?我在源代码中搜索了“会话”,但没有任何结果!
- 会话跟踪如何与 MVC 中的 /REST/FUL/URLS 一起工作?我需要知道关于 cookie 关闭的任何问题吗?
- 我应该以不同于我传统方式的方式来考虑会话吗?