【发布时间】:2017-11-07 05:06:55
【问题描述】:
晚上好,我在 vb.net 的项目中使用了一个 c# 编写的库,除了一些命令外,它工作得很好,为了使它们工作,我必须下载源库代码并将变量的类型从 long integer 更改,但是我尝试了多少重新编译它却得到了这两个错误:
错误 1 Invalid Token '=' in the member declaration of the class, structure or interface C:\Users\Luca\Desktop\TLSharp-master\TeleSharp.TL\TLMethod.cs 23 48 TeleSharp.TL
错误 2 类、结构或接口 C:\Users\Luca\Desktop\TLSharp-master\TeleSharp.TL\TLMethod.cs 的成员中的无效令牌 '=' 24 48 TeleSharp.TL
参考这段代码:
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using TeleSharp.TL;
namespace TeleSharp.TL
{
public abstract class TLMethod : TLObject
{
public abstract void deserializeResponse(BinaryReader stream);
#region MTPROTO
public long MessageId { get; set; }
public int Sequence { get; set; }
public bool Dirty { get; set; }
public bool Sended { get; private set; }
public DateTime SendTime { get; private set; }
public bool ConfirmReceived { get; set; }
public virtual bool Confirmed { get; } = true;
public virtual bool Responded { get; } = false;
public virtual void OnSendSuccess()
{
SendTime = DateTime.Now;
Sended = true;
}
public virtual void OnConfirm()
{
ConfirmReceived = true;
}
public bool NeedResend
{
get
{
return Dirty || (Confirmed && !ConfirmReceived && DateTime.Now - SendTime > TimeSpan.FromSeconds(3));
}
}
#endregion
}
}
我对 C# 的了解很肤浅,我该如何解决这些错误?
【问题讨论】:
-
你不能直接给这样的属性赋值。如果您希望在创建类时默认将这些值设置在构造函数中。编辑:我会回答如何回答。
-
@SamMarion 您可以从 C# 6 开始执行这些任务。
-
哇哦。需要将我的 c# 更新到我不知道的最新版本。谢谢
-
@SamMarion 您删除的答案仍然有效。 OP 可能没有启用 C# 6。
标签: c#