C# C将字符串转换为实体

C# C将字符串转换为实体,c#,C#,我在将字符串转换为OneWeighting类型的实体时遇到问题 我得到了一段代码: foreach (OneWeighing oneWeighing in _weighing) { _oneWeighing.Add(oneWeighing.ScaleShortcut + " / " + oneWeighing.WeighingTime); } 问题就在这一行: _oneWeighing.Add(oneWeighin

我在将字符串转换为OneWeighting类型的实体时遇到问题

我得到了一段代码:

foreach (OneWeighing oneWeighing in _weighing)
{                    
    _oneWeighing.Add(oneWeighing.ScaleShortcut + " / " + oneWeighing.WeighingTime);                
}
问题就在这一行:

_oneWeighing.Add(oneWeighing.ScaleShortcut + " / " + oneWeighing.WeighingTime); 
错误:无法将字符串转换为Entities.WeighingSystem.TruckWeighing.OneWeighing

类别:

   public OneWeighing();

    public bool CanBeCancelled { get; set; }
    public long IDWeighingDetail { get; set; }
    public long IDWeighingRecord { get; set; }
    public bool isCancelled { get; set; }
    public string ScaleShortcut { get; set; }
    public long WeighingRecordAlibi { get; set; }
    public DateTime WeighingTime { get; set; }
    public string WeighingType { get; set; }
    public float Weight { get; set; }

有什么办法解决这个问题吗?谢谢:

您的主要错误来自于您有一个包含OneWeighting类型对象的列表,并且您正试图在其中插入一个字符串

这里最简单的解决方案就是制作一个列表,其中包含来自对象的关键信息,如字符串!可以将其推入组合框中。那么你的代码就可以工作了

但对我来说,这似乎是一个X-Y问题。你应该重构你的问题以反映正确的目标

好的,因为您实际上是在尝试在组合框中正确显示OneWeighting对象,所以需要重写OneWeighting类中的ToString方法。将调用此命令将所需信息写入组合框:

public class OneWeighing
{
    public override string ToString()
    {
        return this..ScaleShortcut + " / " + this.WeighingTime;
    }    
}

在显示的组合框中只显示Entities.WeighingSystem.OneWeighting是因为调用继承的ToString方法来显示有关对象的信息。默认方法仅显示名称空间和类名。这就是为什么要获得此输出

您必须将该字符串分配给OneWeighting的一个属性,或分配给OneWeighting的一个新实例。@CodeCaster您能给我举个例子吗?ThanksHow是否要从字符串创建一个实例?我们不知道这个类是什么样子的,我们不可能猜测你想要达到什么。请编辑你的问题,而不是添加代码作为注释。这很难理解。一些疯狂的猜测\u oneweighting.addoneweighting?另一个解决方案是配置组合框以显示所需的子属性值。例如,在winforms中,您可以设置属性。@Oliver说得对!让我们看看OP的反应如何。可能他只是采用字符串列表的方法,而不关心控件的抖动。但你是对的,谢谢你的提示:如果有用的话,我会让你回答:@DanielCapek不客气,祝你好运。可能您应该发布将元素插入组合框的代码