.net 在webform中的应用(一)

来源:互联网 发布:斐讯k3 usb端口号 编辑:程序博客网 时间:2024/04/30 19:16

.net程序的运行需要.net托管环境的支持,因此这里webform客户端都需要安装framework环境
其实.net是微软大力推广的系列技术,因此微软以后的产品都会预装对net运行环境。

在这里只能说让我们展望未来吧,其实企业级的应用让客户装一个.net环境也不是很麻烦的事情。
如果你真的要面向所有受众,那没办法你还是拿起activex。

我用的是VS2005

1.创建一个空白解决方案并加入一个类库项目Demo,一个Web应用程序项目Web

2.在类库项目中添加一个用户控件(派生自System.Window.Forms.UserControls)
并在用户控件中按照下图拖入控件(Label,DataGridView,Button,FolderBrowserDialog)

 在按钮click时间中加入如下代码

        private void button1_Click(object sender, EventArgs e)
        
{
            
if (fbd.ShowDialog() == DialogResult.OK)
            
{
                DirectoryInfo dir 
= Directory.CreateDirectory(fbd.SelectedPath);
                
if (dir != null)
                
{
                    DataTable dt 
= new DataTable();
                    dt.Columns.Add(
"fileName"typeof(string));
                    dt.Columns.Add(
"fileLength"typeof(long));

                    FileInfo[] filelist 
= dir.GetFiles();

                    
if (filelist.Length != 0)
                    
{
                        
foreach (FileInfo fileInfo in filelist)
                        
{
                            DataRow dr 
= dt.NewRow();
                            dr[
"fileName"= fileInfo.Name;
                            dr[
"fileLength"= fileInfo.Length;

                            dt.Rows.Add(dr);
                        }

                    }

                    DGV_List.DataSource 
= dt;
                    DGV_List.Columns[
0].HeaderText = "文件名";
                    DGV_List.Columns[
1].HeaderText = "文件大小(byte)";
                }

            }


        }

 

3.生成类库Demo.dll,并复制到web项目Controls文件夹下(具体放哪随便你,在下面的classid里面别忘记修改就行)

4.在web项目中创建页面Default.aspx
加入如下页面代码

<object id="Files" classid="/Controls/Demo.dll#Demo.Files" visible="true">
不支持该控件
</object>

 

5.建立一个站点并在浏览器中浏览页面

ok,现在应该显示出我们想要的页面了,不过这个时候你点一下按钮会发现如下报错

根据报错发现程序集没有文件操作权限,因为这个程序集来源是INTERNET域,而.net配置默认该域代码组不具有相应的权限

6.修改.net配置让程序集拥有相应权限(这个只是试验,正真发布使用的时候可不能奢望用户会自己去修改)
修改运行库安全策略 中Internet_Zone的权限集为FullTrust

 

重新打开IE(不是重新打开一个标签)。这个时候点击按钮,OK出来需要的效果了

到现在为止,没有什么实际应用的价值,切图切的累死,下一篇会继续来完善使之具有实际使用价值

原创粉丝点击