我想通过Reflection设置对象的属性,值为type string.所以,举个例子,假设我有Ship一个属性为的类Latitude,它是一个double.
这是我想做的事情:
Ship ship = new Ship();
string value = "5.5";
PropertyInfo propertyInfo = ship.GetType().GetProperty("Latitude");
propertyInfo.SetValue(ship, value, null);
Run Code Online (Sandbox Code Playgroud)
这样就抛出了ArgumentException:
"System.String"类型的对象无法转换为"System.Double"类型.
如何将值转换为正确的类型,基于propertyInfo?
如何通过键功能获取字典值
我的功能代码是这个(和我尝试但不起作用的命令):
static void XML_Array(Dictionary<string, string> Data_Array)
{
String xmlfile = Data_Array.TryGetValue("XML_File", out value);
}
Run Code Online (Sandbox Code Playgroud)
我的按钮代码就是这个
private void button2_Click(object sender, EventArgs e)
{
Dictionary<string, string> Data_Array = new Dictionary<string, string>();
Data_Array.Add("XML_File", "Settings.xml");
XML_Array(Data_Array);
}
Run Code Online (Sandbox Code Playgroud)
我想要这样的东西:
在XML_Array函数上是
字符串xmlfile = Settings.xml
我想要做的是使用c#测量宽带速度.
为此,我使用NetworkInterface.BytesReceived并BytesSent获取从我的网络适配器发送和接收的当前字节数并获取DateTime.
然后我下载/上传文件并再次获取BytesReceived/ .下载/上传速度只是/ 除以时差之间的差值.BytesSentDateTimeBytesReceivedBytesSent
现在我想知道是否有一个公共FTP服务器,我可以下载和上传文件.
我想做这样的事情:
private User PopulateUsersList(DataRow row)
{
Users user = new Users();
user.Id = int.Parse(row["US_ID"].ToString());
if (row["US_OTHERFRIEND"] != null)
{
user.OtherFriend = row["US_OTHERFRIEND"].ToString();
}
return user;
}
Run Code Online (Sandbox Code Playgroud)
但是,我得到一个错误US_OTHERFRIEND,说不属于该表.我想简单地检查它是否为null,然后设置值.
有没有办法做到这一点?
我有格式的RSA私钥PEM,是否有直接的方式从.NET读取并实例化RSACryptoServiceProvider解密用相应的公钥加密的数据?
在启动我的应用程序时,我试图查看用户是否安装了特定版本的软件,特别是MySQL连接器,都使用c#.在注册表中,MySQL包含一个版本条目.所以我想要完成的是这个.
我的应用程序启动了.在启动代码的某处,我需要按顺序执行以下操作.检查用户是否安装了MySQL连接器,该连接器位于...
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\MySQL AB\MySQL Connector/Net
如果用户安装了连接器,我想检查它们的版本,存储为Name ="Version"和Data = xxx(下图)
现在,如果用户安装了特定版本,那么我将执行其他代码,这是我可以从中获取的代码.
最好的解决方法是什么?

编辑:下面是我目前的代码,我在第19行收到错误(注释).我的错误说" error CS1001: Identifier Expected"我无法弄清楚这意味着什么.有帮助吗?
using System;
using Microsoft.Win32;
using System.Data;
public class regTest
{
public static void Main()
{
try
{
RegistryKey key = Registry.LocalMachine.OpenSubKey("Software\\Wow6432Node\\MySQL AB\\MySQL Connector\\Net");
if (key != null)
{
Object o = key.GetValue("Version");
if (o != null)
{
Version version = new Version(o as String); //"as" because it's REG_SZ...otherwise ToString() might be safe(r)
Version broken = new Version("6.7.4");
if (version.Equals.(broken)) //This is where …Run Code Online (Sandbox Code Playgroud) 有没有人遇到过在Visual Studio .NET中尝试在Windows窗体上"查看设计器"导致错误的问题:"无法加载文件或程序集......"?
在这种情况下,有问题的组件是XYZ.dll.我设法通过添加XYZ.dll及其对项目引用的所有引用来解决这个问题(即使我的项目不直接依赖于它们)并重建整个解决方案.然而,在那之后,我从我的项目中删除了所有这些引用,重建,它仍然有效.
另一条信息是我使用Resharper 2.5.其他人指出,可能是Resharper做了一些影子复制.我下次会发生这种情况.有没有人首先理解为什么会发生这种错误,并且可能是"正确"的解决方法?
的两个关键事件参数类KeyEventArgs和PreviewKeyDownEventArgs各自具有两个属性,KeyCode并且KeyData,这两者都是枚举类型键.
这两个属性有什么区别?它们中的值是否彼此不同?如果是的话,何时以及为何?
如何从a调用静态方法Type,假设我知道Type变量的值和静态方法的名称?
public class FooClass {
public static FooMethod() {
//do something
}
}
public class BarClass {
public void BarMethod(Type t) {
FooClass.FooMethod() //works fine
if (t is FooClass) {
t.FooMethod(); //should call FooClass.FooMethod(); compile error
}
}
}
Run Code Online (Sandbox Code Playgroud)
因此,给定一个Type t,目标是调用FooMethod()该类Type t.基本上我需要反转typeof()操作员.
c# ×7
.net ×2
asp.net ×1
cryptography ×1
datarow ×1
dictionary ×1
download ×1
events ×1
key ×1
null ×1
propertyinfo ×1
reflection ×1
registry ×1
rsa ×1
setvalue ×1
upload ×1
winforms ×1