Problem with Master Page and Virtual Path Provider

。_饼干妹妹 提交于 2019-12-08 02:07:49

问题


I built a deployable master page into a dll and referenced it in multiple ASP.NET Web Applications using a virtual path provider. The problem I'm having is that this really confuses the source view of my aspx pages.

Here is the code inside each of my aspx.cs pages which actually attatches the MasterPage to each content page, but as I said, now, my <asp:Content> tags get really confused and I cant CTRL K + CTRL + D my content pages anymore, it throws validation errors on EVERYTHING. HELP!

protected override void OnPreInit(EventArgs e)
        {
            MasterPageFile = MasterPageVirtualPathProvider.MasterPageFileLocation;
            base.OnPreInit(e);
        }

回答1:


To get design time support for shared MP you need to provide markup for VS to work with.

You can do this by copying your MP's markup file in you consuming project, removing the codebehind attribute and delete the codebehind file OR add a linked copy with a blank codebehind.

Now set your content page's masterpage to the stub you just created and you should have design time support.

Your VPP should render from the embedded markup at runtime.

Not optimal but if you want design-time support I think this is the only way.



来源:https://stackoverflow.com/questions/2284678/problem-with-master-page-and-virtual-path-provider

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!