一些杂项--载袭

来源:互联网 发布:编程工具怎么下载 编辑:程序博客网 时间:2024/05/21 22:21
在SkinFile中为GenericWebPart定样式

微软是MSDN是这样对GenericWebPart进行定义的:对不是 WebPart 控件的服务器控件进行包装,使其在运行时与真正的 WebPart 控件具有相同的外观和行为。

 

举个例子,当我们把一个Calendar控件放到WebPartZone中,这个控件就变成了GenericWebPart。这时这个Calendar控件就具有GenericWebPart的属性了,我们可以在代码中直接定义这些属性。比如,可以像这样定义Title属性:

<asp:Calendar ID="Calendar1" runat="server" Title="日历部件"></asp:Calendar>

 

现在的问题是,如果我在WebPartZoneNCalendar这样的ASP.NET控件,我是不是就要定义NTitle属性?有没有更简单点的办法?带着这个疑问,我查了MSDN、查了Google、查了Baidu、查了asp.net的论坛,结果没有找到很好的解决办法。(现在想想,或许是我使用的关键字“GenericWebPart AND Skin”不对,呵呵)

 

抱着“唉,微软肯定不会让我这么干地。 ”的心情,无奈的在SkinFile中加入了这样一行代码:

<asp:GenericWebPart runat="server" Title="请点击此处进行拖拽操作"></asp:GenericWebPart>

 

Ctrl+F5

 

真神奇!所有的Tilte都从原来的“无标题”变成了“请点击此处进行拖拽操作”!我该说什么好呢,微软可没在MSDN里说能这么干,或者说允许你这么干。呵呵,不管怎么说,到底是把问题解决了。

 

前人栽树,后人乘凉。如果有一天有人遇到了和我同样的问题,希望他可以通过Google找到这里。

 

有关GenericWebPart公共属性请参考

http://msdn2.microsoft.com/zh-cn/library/system.web.ui.webcontrols.webparts.genericwebpart_properties.aspx

posted @ 2006-07-12 09:40 里德王 阅读(53) | 评论 (0) | 编辑 收藏
  2006年7月11日

在ASP.NET 2.0中为DataList控件绑定字符串数组

ObjectDataSource控件的SelectMethod属性设置为System.Web.Security.Roles.GetAllRoles(该方法返回一个字符串数组),然后将DataList1DataSourceID属性设置为ObjectDataSource控件的ID

 

进入DataList的项模板。在项模板中放置一个Lable控件,然后为Lable控件绑定数据。在数据绑定界面中,选择为Label控件的Text属性绑定数据。这时只能编辑自定义绑定,不能将绑定表达式填写成”Eval(0)”,因为Eval()方法只接收字符串参数。所以这里要使用ASP.NET 1.1的方法,将”Container.DataItem”作为绑定表达式。

posted @ 2006-07-07 10:09 里德王 阅读(160) | 评论 (0) | 编辑 收藏
  2006年7月5日
利用WinRAR对MySQL数据库进行定时备份。

对于MySQL的备份,最好的方法就是直接备份MySQL数据库的Data目录。下面提供了一个利用WinRAR来对Data目录进行定时备份的方法。

 

首先当然要把WinRAR安装到计算机上。

 

将下面的命令写入到一个文本文件里

 

net stop mysql

del d:/mysql/data /q

c:/progra~1/winrar/winrar a -ag -k -r -s d:/mysql.rar d:/mysql/data

net start mysql

 

保存,然后将文本文件的扩展名修改成CMD

 

进入控制面版,打开计划任务,双击“添加计划任务”。在计划任务向导中找到刚才的CMD文件,接着为这个任务指定一个运行时间和运行时使用的账号密码就可以了。

备份文件的文件名类似下面这张图中的样子。

posted @ 2006-07-05 10:36 里德王 阅读(164) | 评论 (1) | 编辑 收藏
  2006年7月3日
好记性果然不如烂笔头

今天在编辑强类型DataSet时,又遇到了“无法找到对象“Web.config”的连接“ConnectionString (Web.config)”。原因为: 在应用程序设置中找不到该连接字符串,或者未能加载与该连接字符串关联的数据提供程序。”这样的提示。

 

隐约记得以前曾经遇到过相同的问题,并且顺利的解决掉了,但又一时想不起来是如何解决掉的。

 

找了一会儿原因,发现是因为保存在Web.config中的连接字符串中包含有字符“.”(半角句号)才导致了这个问题的产生。只要去掉连接字符串中的半角句号就可以解决问题了。

 

如果问题还没有得到解决,再用记事本打开.XSD文件,找到Connections配置节,删除这个配置节下的所有子节,之后只要进入图形编辑界面中重新为强类型DataSet指定连接字符串就可以了。

posted @ 2006-07-03 14:03 里德王 阅读(32) | 评论 (0) | 编辑 收藏
  2006年7月1日
SQL SERVER EXPRESS 常见问题及解决办法
在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。 (provider: SQL 网络接口, error: 26 - 定位指定的服务器/实例时出错)
首 选请确认SQL SERVER EXPRSS已安装到本地计算机上,并且SQL SERVER (SQLEXPRESS)服务已经成功启动。如果问题仍然存在,可以尝试应打开“SQL Server 外围应用配置器”,选择“服务和连接的外围应用配置器”,然后将“远程连接”配置为“同时使用 TCP/IP 和 named pipes”

由于启动用户实例的进程时出错,导致无法生成 SQL Server 的用户实例。该连接将关闭。
将连接字符串中的“User Instance=True”修改为“User Instance=False”即可。
相关参考文章请参阅《非管理员用户实例》

无法将文件 'X:/Website/App_Data/Database.mdf' 作为数据库 ''. 附加。当前命令发生了严重错误。应放弃任何可能产生的结果。
需要为X分区以及X分区的子文件夹和文件分配Users组的“读取”权限。

尝试为文件 X:/Website/App_Data/Database.mdf 附加自动命名的数据库,但失败。已存在同名的数据库,或指定的文件无法打开或位于 UNC 共享目录中。
首 选要确认已经为X分区以及X分区的子文件夹和文件分配了Users组的“读取”权限。如果问题仍然存在,请使用SQL Server Management Studio连接到SQLEXPRESS数据库实例,检查是否有名称是“Database”的数据库存在。如果有,分离同名数据库即可。

无法打开用户默认数据库。登录失败。
用户 'NT AUTHORITY/NETWORK SERVICE' 登录失败。

数据库文件Database.mdf 的读写权限被设置成只有NETWORK SERVICE才具有。解决方法是先停止掉SQL SERVER (SQLEXPRESS)服务,然后从父项集成权限,再次启动SQL SERVER (SQLEXPRESS)服务即可。
posted @ 2006-07-01 14:40 里德王 阅读(276) | 评论 (0) | 编辑 收藏
  2006年6月22日
截取等宽字符串函数

当遇到需要对过长的标题进行截取时,可以使用下面这个函数进行截取。

 1public static string GetSubString(string original, int lenght)
 2{
 3    string newStr = original;
 4
 5    if (lenght < original.Length)
 6    {
 7        int newLen = lenght;
 8
 9        bool isFirst = true;
10
11        for (int i = 0; i < lenght; i++)
12        {
13            if ((int)original[i] < 128)
14            {
15                newLen++;
16
17                if (newLen <= original.Length)
18                {
19                    if ((int)original[newLen - 1> 127 && isFirst)
20                    {
21                        newLen--;
22
23                        isFirst = false;
24                    }

25                    else
26                    {
27                        isFirst = true;
28                    }

29                }

30                else
31                {
32                    break;
33                }

34            }

35        }

36
37        newStr = original.Substring(0, newLen);
38    }

39
40    return newStr;
41}

这个函数的作用是:当已截取的字符串中包括英文时,则在原字符串上多截取一部分字符。多截取的数量取决于已截取的字符串中英文字符的数量。

不过这个函数只适用于使用等宽英文字体的网页,如使用"宋体"等字体的网页。不适用于使用非等宽字体的网页,如使用"Tahoma"等字体的网页。