主题:为什么我的系统里没有System.Net.dll文件,请高手指点
dearsohucom
[专家分:0] 发布于 2006-05-10 15:16:00
我的环境:Windows2000 + sp4 + .Net FrameWork SDK 2.0,为什么我的系统中没有System.Net.dll文件,我是一个学习C#的新手,请高手帮忙指点[em10]
回复列表 (共7个回复)
沙发
yuhua [专家分:1730] 发布于 2006-05-10 15:41:00
System.net 命名空间是System下的吧?
只要添加了System.dll引用就可以使用了
没有.net.dll文件
板凳
dearsohucom [专家分:0] 发布于 2006-05-10 15:50:00
但我看到的很多教程里面都有提到System.Net.dll这个文件,而且说明编译的时候要指定该文件
3 楼
yuhua [专家分:1730] 发布于 2006-05-10 16:29:00
这里有个命名空间和类集的概念,简单说就是我们看到的引用比如说System.Net 不是实际存在于某个Dll 而是属于类集 其实有好多引用你如果真去找的话根本找不到Dll
至于你的例子上 编译要指定的话 不知道他指定的是 csc /r:system.dll 还是
csc /r:system.net.dll
如果是后者我相信肯定谁都编译不过去
C#里面用Using就行了 指定多费劲?
4 楼
dearsohucom [专家分:0] 发布于 2006-05-10 16:50:00
您说的我都清楚,但是我这个例子怎么也编译不过去,无论是指定哪个Dll还是不指定Dll,我学习C#时间不长,但使用VC已经很长时间啦,请指教
using System;
using System.Net;
class ResolveDNS
{
IPAddress[] m_arrayIPs;
public void Resolve( string s_host )
{
IPHostEntry ip = DNS.GetHostByName( s_host );
m_arrayIPs = ip.AddressList;
}
public IPAddress this[ int nIndex ]
{
get
{
return m_arrayIPs[ nIndex ];
}
}
public int IPLength
{
get
{
return m_arrayIPs.Length;
}
}
}
class TestApp
{
public static void Main()
{
ResolveDNS resolver1 = new ResolveDNS();
resolver1.Resolve( "www.sohu.com" );
int n = resolver1.IPLength;
Console.WriteLine( "Get the IP Address of the host" );
Console.WriteLine();
for( int i = 0; i < n; i ++ )
{
Console.WriteLine( resolver1[ i ] );
}
}
}
编译错误为:
e:\ResolveDNS.cs(9,20): error CS0103: The name 'DNS' does not exist in the current context
5 楼
yuhua [专家分:1730] 发布于 2006-05-10 17:05:00
IPHostEntry ip = DNS.GetHostByName( s_host );
把DNS 改称Dns
不熟悉的类名字用全引用看看
System.Net.Dns
避免把名字给弄错了
6 楼
dearsohucom [专家分:0] 发布于 2006-05-10 17:23:00
非常感谢,我用的是EditPlus编辑器,没有提示的所以出现这个问题,而装VS2003又太大啦,有没有相关的资料可下呀
7 楼
yuhua [专家分:1730] 发布于 2006-05-10 17:30:00
msdn 上资料很全的
你可以经常去查查看看有什么你需要的
我来回复