随笔分类 - ASP.NET
摘要:Server Error in '/Engtek' Application. Cannot obtain the schema rowset "DBSCHEMA_TABLES_INFO" for OLE DB provider "SQLNCLI10" for linked server "DB1". The provider supports the interface, but returns a failure code when it is used.Description: An unhandled excep
阅读全文
摘要:用户经常需要把Excel的数据导入SQL中,只有这样先导入到一个表中,然后再对这个表进行处理。由于目标表的数据不能清空。数据存在的,需要作更新动作,不存在的,需要做插入动作。代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->DECLARE@NINT=1DECLARE@ROWSINT=(SELECTMAX([ID])FROM[dbo].[Loose04])WHILE@N<=@ROWSBEGIN--宣告临时变量,存储每笔记录需要异动的字段
阅读全文
摘要:[Fqa]表与[FqaVisual]表,是一对多的关系,即是说[FqaVisual]表中有一[FqaId]字段是FOREIGN KEY也是[Fqa]表的主键。还有一点重点,就是[Fqa]表的[VisualPassed]字段,与[FqaVisual]表的[Result]字段,这两个字段的数据类型均为BIT。当[VisulaPasswd]字段值为0时,[FqaVisual]表可添加一笔或多笔记录,但最后一笔记录的[Result]字段值为1,一旦[Result]字段值为1时,还要更新[Fqa]表的[VisualPassed]字段为1。当[VisulaPasswd]字段值为1时,无法再对[FqaVis
阅读全文
摘要:在aspx页面中检查用户拥有访问此页权限之后,即可检查到用户是否拥有相关的操作权限,如“添加”,“编辑”,“更新”,“删除”等操作权限。存储过程:代码 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATEPROCEDURE[dbo].[usp_CheckOperationAction](@UsersIdint,@PagesIdint,@Operation
阅读全文
摘要:如何实现用户是否有访问页面的权限,我们可以在asp.net的Page_Load中,取得当前网页名称与当前用户,来检查到用户是否有对此页访问权。可以通过检索[UsersRole]表和[UsersModule]表,是否有相关记录,如果有即有访问权限,反之,即是拒绝访问。存储过程:代码 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATEPROCEDURE[d
阅读全文
摘要:用户与模块关系功能,您可以写成跟用户与角色关系一样。不过下面实现方法会看到更多的权限控制。介面如下截图:数据表结构如下:代码 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE[dbo].[UsersModule]([UsersId][int]NOTNULL,[ModuleId][smallint]NOTNULL,[Purview][int]
阅读全文
摘要:把控制的页面分类,即以模块来分类,如同角色所拥有页面一样,最终我们只为用户分配某一模块,来控制到用户只能访问相关的页面。asp.net前端介面:在数据库,表[ModulePages]结构如下,代码参考角色与页面关系表结构一样:实现为模块分配页面的事件,还得写分配事件的存储过程:代码 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATEPROCEDURE[
阅读全文
摘要:权限管理,不但有角色大方面来控制用户所拥有的权限,还是以模块来控制,这样可以让权限分得更细些。这方法与角色管理表结构与存储过程是一样的,只是一些表名写字段名称不一样而已。在asp.net后台管理介面如下截图:数据表[Module]结构如下:代码 Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE[dbo].[Module]([ModuleId
阅读全文
摘要:做权限管理,我们要做好某一个角色所拥有的控制页面,因此,会在数据库中,建立一张[RolePages]来存储角色与控制页面的关系信息。在Asp.net介面,如下示图:表结构如下:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE[dbo].[RolePages]([RoleId][smallint]NOTNULL,[PagesId][int
阅读全文
摘要:权限管理,必涉及到用户与角色关系。下面的做法,是对某一个用户授权拥有某个角色。一个用户可拥有多个角色。建立一张表[UsersRole]其中有三个字段,[UsersId]注册用户ID,[RoleId]角色表的主ID,还有一个字段[IsEnable]数据类型为BIT是记录用户是否拥有此角色。表的结构如下:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREAT
阅读全文
摘要:下面示图为角色管理介面。在数据表[Role]中,最少需要两个字段[RoleId]和[RoleName]。Project中所有角色在此介面进行管理。下面为表[Role]结构,直接拷贝在sql Server2008查询分析器执行:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->ETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE[dbo].[Role]([RoleId][smallint]ID
阅读全文
摘要:在Project中,实现权限管理,首先要管理好需要权限控制的页面,因此,我们可以在SQL Server建立一个表[Pages]来存储页面。下面为表[pages]结构,可参考:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE[dbo].[Pages]([PagesId][int]IDENTITY(1,1)NOTNULL,[PagesNam
阅读全文
摘要:我们可以在专案中,实现用户登录日志记录。简单实现方法,如下:在数据中建立一张表,存储一些相关的信息。代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATETABLE[dbo].[LoginLog]([LoginLogId][int]IDENTITY(1,1)NOTNULL,[UsersId][int]NOTNULL,[IP][nvarchar](20)
阅读全文
摘要:在存储过程中,有时需要处理前端传入的如数组集合,方法可以参考下面实例:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->SETANSI_NULLSONGOSETQUOTED_IDENTIFIERONGOCREATEPROCEDURE[dbo].[usp_FqaVisual_GetWorkPlaceReport](@WorkPlaceCollectionsNVARCHAR(50)--用户选择的场所集合,如:"2,5,6,7"
阅读全文
摘要:一个问题困扰多时,最终的结论,是因为自己不小心所致。开发时测试已经OK的程序,交给用户使用也没有问题,过了几天,用户反映更新不了。把最新数据库导入开发本机测试,确实是GridView无法更新。Debug用F11进行跟踪,程序完全顺利跑完,数据库中的数据即没有更新。在sql Server的查询分析器执行更新存储过程,发现数据库的数据已经更新了。检查到此步,说明存储过程没有问题,原因在程序中。再一次Debug跟踪,这次非常仔细,每一步都查看完,最终发现主健在传入为空。看到这些,为何程序刚开始是OK的呢?Insus.NET有点想不明白,进入程序打开类别查看更新事件,问题找出来,原来就在这里。开发时,
阅读全文
摘要:方法一:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--><asp:TemplateFieldHeaderText="检查日期"><ItemTemplate><%#Eval("InspectionDate","{0:yyyy-MM-dd}")%></ItemTemplate></asp:TemplateField>方法二:
阅读全文
摘要:一个日期时间自定义组件。用法:using Insus.NET;类别名称:InsusDateTimeUtility下载地址:http://download.cnblogs.com/insus/library/InsusDateTimeUtility.zip
阅读全文
摘要:下面方法,只能在Gridview的BoundField进行操作,而在TemplateField模版中去找的话,就无能为力了,因TemplateField模版没有DataField属性。代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->publicintGetColumnIndex(GridViewgridView,stringfieldName){intindex=-1;for(inti=0;i<gridView.Columns.Co
阅读全文
摘要:在vs2010 RC版本,重复几次debug程序时,无法进行,出现下面这个警示:奇怪呀,早上一上班还是可以的,忽然令Insus.NET想起一件事情,就是刚才傲游浏览器(Maxthon)有更新,版本为:再加上Insus.NET的电脑的默认浏览器是傲游浏览器(Maxthon),而不是IE8。解决方法,只有把IE设为默认浏览器,把IE8打开,它会出现一个提示窗口:点“是(Y)”按钮。然后Insus.NET再在vs2010执行Debug时,上面的错误消失了,能顺利进行下去了。
阅读全文
摘要:aspx:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--><asp:TextBoxID="TextBox1"runat="server"></asp:TextBox>aspx.cs:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->
阅读全文