我有这个ping行
def no_ws(string,which='left'):
"""
Which takes the value of 'left'/'right'/'both'/'all' to remove relevant
whitespace.
"""
remove_chars = (' ','\n','\t')
first_char = 0; last_char = 0
if which in ['left','both']:
for idx,letter in enumerate(string):
if not first_char and letter not in remove_chars:
first_char = idx
break
if which == 'left':
return string[first_char:]
if which in ['right','both']:
for idx,letter in enumerate(string[::-1]):
if not last_char and letter not in remove_chars:
last_char = -(idx + 1)
break
return string[first_char:last_char+1]
if which == 'all':
return ''.join([s for s in string if s not in remove_chars])
但它会引发错误说明:
无法找到类型或命名空间“Ping”
我已经尝试使用new Ping().Send("8.8.8.8").RoundtripTime.ToString() + "ms";
导入System.Net
但没有运气。
我正在构建using System.Net;
(将使用Universal Windows Application
它可能是基本的东西,但我是C#的新手。
答案 0 :(得分:2)
导入System.Net.NetworkInformation。
一个好方法是使用Visual Studio中的对象浏览器来查找丢失的类。您可以搜索Ping,对象浏览器将显示您需要的命名空间。
答案 1 :(得分:2)
System.Net.NetworkInformation.Ping目前在通用Windows应用程序中不可用。它使用的Windows API调用并不存在于所有平台上。
答案 2 :(得分:1)
如果找不到类型,请确保已添加正确的使用 指令即可。
using System.Net.NetworkInformation;
当覆盖Ping
- Type关键字时,它必须显示System.Net.NetworkInformation.Ping
,否则找不到程序集。
查找Ping-Class here会告知该类所在的dll。在这种情况下,它是System.dll
。请务必将其添加到项目参考
如果这也不起作用,我想你以某种方式声明了一个自定义命名空间,它隐藏了Ping类的命名空间。
因此,如果您在<{1}} - 命名空间内编写代码 ,如下所示(甚至是System.Net.NetworkInformation
):
System.Net
这会隐藏请求的命名空间。我建议在这种情况下使用另一个命名空间
当然,我没有抓住其他部分的所有可能性。所以请在评论中添加完成,我将添加它们。