คอมไพเลอร์ใน Visual Studio มีคุณสมบัติมากกว่าคอมไพเลอร์ใน Unity ซึ่งหมายความว่าบางรหัส (โดยเฉพาะอย่างยิ่งคุณสมบัติใหม่ c #) จะให้ข้อผิดพลาดใน Unity แต่ไม่ใช่ใน Visual Studio
อย่างไรก็ตามคุณสามารถเปลี่ยนกรอบงานเป้าหมายให้ตรงกับกรอบที่ใกล้เคียงกับที่ Unity ใช้ในโปรแกรมแก้ไขของคุณ ฉันทำสิ่งนี้ใน Xamarin เมื่อพัฒนาห้องสมุดสำหรับ Unity แต่ดูเหมือนว่าจะเป็นไปได้ใน Visual Studio เช่นกัน
ใน Visual Studio ในคุณสมบัติของโครงการ DLL ให้ตั้งค่าคุณสมบัติกรอบงานเป้าหมายเป็นรุ่น Unity Framework ที่คุณใช้ นี่คือไลบรารีของ Unity Base Class ที่ตรงกับความเข้ากันได้ของ API ที่เป้าหมายของโครงการของคุณเช่นไลบรารีของ Unity เต็ม, micro หรือเว็บเบส สิ่งนี้ป้องกันไม่ให้ DLL ของคุณเรียกวิธีเฟรมเวิร์กที่มีอยู่ในเฟรมเวิร์กอื่นหรือระดับความเข้ากันได้ แต่อาจไม่มีอยู่ในเวอร์ชัน Unity Framework ที่คุณใช้
https://msdn.microsoft.com/en-us/library/dn940020.aspx
unity .net profile upgrade
ใน Google