Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 基于服务器控件动态加载样式表_Asp.net_Css_Parameter Passing_Using Directives - Fatal编程技术网

Asp.net 基于服务器控件动态加载样式表

Asp.net 基于服务器控件动态加载样式表,asp.net,css,parameter-passing,using-directives,Asp.net,Css,Parameter Passing,Using Directives,我有一个网站,需要根据模型加载基本样式组件(根据用户输入在后端SQL server上确定) 其概念是,该网站可以包含基于登录页预定义的参数化外观组件 有谁能提供一个基本的想法或例子来说明如何做到这一点?一个想法是将样式参数存储在数据库中,但是样式表怎么能做到这一点呢。另一个想法是让这些预定义的样式表与landpage相对应,但这需要一个服务器控件,我们无法在链接样式表中实现这一点 样式表不能从数据库中提取,但您当然可以创建一个处理程序来提供CSS文件,而不是指向物理CSS文件 然而,这里更大的问

我有一个网站,需要根据模型加载基本样式组件(根据用户输入在后端SQL server上确定)

其概念是,该网站可以包含基于登录页预定义的参数化外观组件


有谁能提供一个基本的想法或例子来说明如何做到这一点?一个想法是将样式参数存储在数据库中,但是样式表怎么能做到这一点呢。另一个想法是让这些预定义的样式表与landpage相对应,但这需要一个服务器控件,我们无法在链接样式表中实现这一点

样式表不能从数据库中提取,但您当然可以创建一个处理程序来提供CSS文件,而不是指向物理CSS文件

然而,这里更大的问题更多的是一个商业问题。在编写此代码之前,您必须弄清楚控件或布局到CSS文件的映射。如果您不这样做,我几乎可以保证,当您的系统无法处理需求时,您将经历一些痛苦。如果你不想有太多的痛苦,那么提前做好设计工作


现在,回到问题上来。“基于登录页”?你是说不同的用户访问不同的登录页面吗。如果是这样,可以将样式应用于模板(在ASP.NET中很容易),也可以创建自定义配置文件提供程序,将样式与用户相结合。我会仔细考虑这些选择。将文件存储为文件或存储在数据库中是一个单独的问题。

这一点尚不清楚:网站正在使用asp.net和nHibernate对后端sql server进行建模。您能否解释“服务”的用法?此解决方案是否会将文件写入服务器,或仅提供文本信息,您能否提供参考?我同意这更多的是一个设计问题。一个快速的解决方案是使用以下代码:''在aspx中使用'myCSS.Attributes.Add(“href”,“MyStyleFile.css”);'在代码隐藏中,MyStyleFile是从存储在cookie中的数据中提取的动态参数。CSS样式由第三方提供,可向多个客户提供一个站点,并带有品牌。根据您的要求,有多种方法可以解决此问题。您可以拥有CSS文件并决定动态设置是什么。这可以通过编程方式更改链接标记或使用HTTP处理程序(自定义AXD文件)并以这种方式提供来实现。微软在他们的一些代码中使用了后者。