ข้ามไปที่เนื้อหา

ย้ายจาก .NET Framework

ย้ายไปยัง .NET 6.0

cTrader Windows ได้ย้ายจาก .NET Framework ไปยัง .NET 6.0 ในเวอร์ชัน 4.2 ส่งผลให้เกิดการเปลี่ยนแปลงที่สำคัญหลายอย่างในส่วนติดต่อผู้ใช้และวิธีการคอมไพล์และสร้าง cBot และอินดิเคเตอร์

การเปลี่ยนแปลงที่สำคัญ

ก่อนการย้าย cTrader ใช้ .NET Framework 4.0 (และ C# เวอร์ชัน 4) อัลกอทั้งหมดทำงานภายในกระบวนการหลักของ cTrader Windows

หลังจากการย้าย cTrader ใช้กระบวนการย่อยแยกสำหรับอินดิเคเตอร์และ cBot นอกจากนี้ยังใช้แพ็คเกจ NuGet เฉพาะสำหรับการสร้างไฟล์ .algo

อย่างไรก็ตาม เวอร์ชันใหม่ของ cTrader ยังคงสามารถใช้งานร่วมกับโค้ดที่เขียนก่อนการย้ายได้ ยกเว้นบางกรณี คุณสามารถใช้อินดิเคเตอร์และ cBot ที่สร้างในเวอร์ชันเก่าของ cTrader ได้อย่างอิสระ

หมายเหตุ

ชื่อพารามิเตอร์และเมธอดบางอย่างได้ถูกเปลี่ยนแปลงระหว่างการย้าย เมื่อสร้าง cBot หรืออินดิเคเตอร์เก่าของคุณในเวอร์ชันใหม่ของ cTrader คุณอาจได้รับข้อผิดพลาดหรือคำเตือนในการสร้างเนื่องจากสิ่งนี้ ปรึกษาไลบรารีอ้างอิงเพื่อเรียนรู้ชื่อเมธอดหรือพารามิเตอร์ใหม่และโอเวอร์โหลดของเมธอด

วิธีย้ายไปยัง .NET 6.0

เพื่อย้ายจาก .NET Framework ไปยัง .NET 6.0 ให้สร้างอินดิเคเตอร์และ cBot ของคุณใหม่ใน cTrader Windows 4.2 หรือใหม่กว่า ระหว่างการสร้างใหม่ cTrader จะเปลี่ยนโครงสร้างโปรเจกต์ .NET เป็นรูปแบบ SDK ใหม่โดยอัตโนมัติ

หลังจากการสร้างใหม่ ให้เปลี่ยนเฟรมเวิร์กเป้าหมายของอินดิเคเตอร์หรือ cBot ของคุณเป็น .NET 6.0 ผ่านเมนูแบบเลื่อนลง Target framework

Image title

ทดสอบอินดิเคเตอร์หรือ cBot ของคุณหลังจากสร้างใหม่

หมายเหตุ

หากอินดิเคเตอร์หรือ cBot ของคุณใช้สิทธิ์ในการเข้าถึง File, Registry หรือ Internet ให้เปลี่ยนเป็น FullAccess

ในเวอร์ชัน 4.2 cBot และอินดิเคเตอร์ที่ใช้หลายเธรดไม่สามารถเรียกสมาชิก API ใดๆ ได้ สามารถแก้ไขได้โดยใช้เมธอด BeginInvokeOnMainThread เพื่อเรียกเมธอดหรือสมาชิก API มิฉะนั้น โค้ดของคุณจะแสดงข้อผิดพลาด

เนื่องจาก cTrader Algo API ไม่ปลอดภัยต่อเธรด คุณต้องใช้เมธอด BeginInvokeOnMainThread ทุกครั้งที่คุณเรียกหรือเข้าถึงสมาชิก API