惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Engineering at Meta
Engineering at Meta
博客园_首页
H
Help Net Security
WordPress大学
WordPress大学
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
罗磊的独立博客
博客园 - 三生石上(FineUI控件)
B
Blog
I
InfoQ
SecWiki News
SecWiki News
T
Tailwind CSS Blog
Spread Privacy
Spread Privacy
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
V
Vulnerabilities – Threatpost
N
Netflix TechBlog - Medium
P
Palo Alto Networks Blog
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
Vercel News
Vercel News
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
K
Kaspersky official blog
M
MIT News - Artificial intelligence
S
Schneier on Security
T
Threat Research - Cisco Blogs
F
Fortinet All Blogs
Cyberwarzone
Cyberwarzone
Scott Helme
Scott Helme
aimingoo的专栏
aimingoo的专栏
Martin Fowler
Martin Fowler
MyScale Blog
MyScale Blog
The Cloudflare Blog
Recent Announcements
Recent Announcements
Security Latest
Security Latest
G
GRAHAM CLULEY
IT之家
IT之家
Y
Y Combinator Blog
The Last Watchdog
The Last Watchdog
腾讯CDC
Google DeepMind News
Google DeepMind News
V
V2EX
S
Securelist
TaoSecurity Blog
TaoSecurity Blog
B
Blog RSS Feed
S
SegmentFault 最新的问题
博客园 - 叶小钗
P
Proofpoint News Feed
云风的 BLOG
云风的 BLOG
Project Zero
Project Zero
G
Google Developers Blog
Google DeepMind News
Google DeepMind News
F
Full Disclosure

博客园 - EricZhen

【ExtJS实践】之七 :禁止Grid、Treegrid列排序和列菜单 【ExtJS实践】之六 :Combobox从后台获取JSON格式的数据 【ExtJS实践】之五 :常用语句及脚本备忘 【ExtJS实践】之四 :关于ExtJS的createDelegate 【ExtJS实践】之三 :页面布局应用 【ExtJS实践】之二 :TreeGrid显示复选框 【ExtJS实践】之一 :TreeGrid异步加载数据 ASP.Net下使用ExtJS报“Ext未定义”错误的原因 关于在Windows2008里配置AjaxPro.2 【备忘】转:.net的数据库连接字符串 【备忘】转:模态窗口缓存问题的解决 【备忘】红旗Linux下安装VMWare Tools的方法 关于Cookie的一个小问题 [备忘]各类数据库连接字符串 [备忘]autorun专杀工具 [备忘].cll文件的MIME类型 [备忘]方正字库中英文对照表 [SharePoint]不同页面间的多个数据视图间建立关联 C#在Word文档指定位置处理表格
[SharePoint2007]使用自定义数据库的几个问题
EricZhen · 2007-08-30 · via 博客园 - EricZhen

    MOSS2007中提供了显示、新增、编辑、删除自定义数据库的功能。

    显示和删除功能都很容易实现,我在做的过程中没有遇到什么难题,所以就不写了。

    先说说编辑吧:

    我在Designer中添加了一个“项目表单”来完成编辑功能。

    1、我使用的数据库是SQL Server 2005,一开始做编辑功能的时候,MOSS总是提示“数据控件没有执行操作(大体是这个意思)”,无法将编辑结果保存到数据库中。后来经过一项一项的排除才发现,原来是我将数据表的主键也放到了“项目表单”中,所以MOSS才会报错。

    2、将主键去掉后,MOSS不报错了,但又出现了一个新的问题,编辑的结果无法保存到数据库中,这又是为什么呢?
    经过检查,发现如果某个字段的值是null或者空字符串,那么“项目表单”就不会将编辑结果保存到数据库中。因此,如果要使用“项目表单”做编辑,那么要保证数据库中各个字段的默认值不为null或空字符串。

    再说说新增:

    使用Designer在页面中添加一个“新建项目表单”可以很容易的实现新增功能。我这里要说的是如何将其他表中的数据作为新增内容保存到当前做新增功能的数据表中。具体步骤如下:

     1、在Designer中插入一个“新建项目表单”:
新建项目表单
    “新建项目表单”中所有的输入项目都是文本框,这里我们需要将SupplierID对应的输入项目换成下拉列表,其中绑定的是另外一张数据表的数据;

    2、在SupplierID对应的文本框中,插入一个下拉列表,然后将另一张数据表绑定到这个下拉列表中;

    数据绑定的方法请参考SharePoint Designer的帮助,里面有很详细的教程;

    3、在Designer中找到SupplierID对应的文本框的代码:

<asp:TextBox runat="server" id="ff1{$Pos}" __designer:bind="{ddwrt:DataBind('i',concat('ff1',$Pos),'Text','TextChanged','SysID',ddwrt:EscapeDelims(string(@SysID)),'@SupplierID')}" />
            
<asp:DropDownList runat="server" id="DropDownList1" DataTextField="SupplierName" DataSourceID="SqlDataSourceSupplier0830" DataValueField="SysID" />
                                    
<asp:SqlDataSource runat="server" ID="SqlDataSourceSupplier0830" ConnectionString="Data Source=rjdfmis\htsql2005;Initial Catalog=WZMis;Persist Security Info=True;User ID=sa;Password=htsql2005" ProviderName="System.Data.SqlClient" SelectCommand="SELECT [SysID], [SupplierName] FROM [Supplier]" />

   

    用TextBox的id和__designer:bind相关的代码覆盖DropDownList的id的内容,然后删除TextBox;

<asp:DropDownList runat="server" id="ff1{$Pos}" __designer:bind="{ddwrt:DataBind('i',concat('ff1',$Pos),'Text','TextChanged','SysID',ddwrt:EscapeDelims(string(@SysID)),'@SupplierID')}"  DataTextField="SupplierName" DataSourceID="SqlDataSourceSupplier0830" DataValueField="SysID" />

    4、保存,然后在ie中打开这个页面;

    在下拉列表中选择Supplier,然后就可以将对应的SupplierID保存到数据库中了。