Dim assemblyPath As String = GetConfigurationValue(envPrefix & ".TemplateSelectorFormAssemblyPath") Dim myAssembly As Assembly = Assembly.LoadFrom(assemblyPath) Dim ReflectionObject As Type = myAssembly.GetType("BOT.DMS.ExcelTemplate.Common.TemplateSelectorForm") templateSelector = Activator.CreateInstance(ReflectionObject) templateSelector.Init(xeCategories, xeTemplateInfos)
ตัวอย่างการเขียน Reflection โดยหลักๆ แล้วก็คือการโหลด dll เข้าไปใช้ แต่สิ่งที่น่าสนใจคือ
มันต่างอะไรกับที่การเรา add reference project เ้ข้าไป เดี๋ยวหาคำตอบมาเล่าให้ฟังครับ
มันต่างอะไรกับที่การเรา add reference project เ้ข้าไป เดี๋ยวหาคำตอบมาเล่าให้ฟังครับ
ได้ข้อดีมา 1 ข้อแล้ว อันนี้ในกรณีเป็น window application ข้อดีคือ scalability , maintenance
ตอบลบถ้าเรา add reference project เวลาถ้าเรามีการ update dll ในโปรเจ็คไหนที่เรา reference สักตัวเราก็ต้องไปไล่ update ที่ client ทั้งหมด
แต่ถ้าเราใช้ reflection เราก็ update ที่ path ที่เป็น dll ใน server ที่เดียวจบข่าวฮะ