- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Melyik tápegységet vegyem?
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Rekordokra vágyik! Kezünkben az Asus ROG Matrix GeForce RTX 5090
- NVIDIA GeForce RTX 5070 / 5070 Ti (GB205 / 203)
- TCL LCD és LED TV-k
- Azonnali fotós kérdések órája
- RAM topik
- Kompakt vízhűtés
- Azonnali alaplapos kérdések órája
Új hozzászólás Aktív témák
-
ArchElf
addikt
Egy példa a lentire(kicsit meg lett vágva). Az példa egy dinamikusan betölthető adatszolgáltató interfésze + betöltő osztálya. Természetesen az adatszolgáltatókat külön meg kell(ett) írni hozzá
using System;
using System.Collections.Generic;
using System.Reflection;
using System.Text;
namespace MonitorUser.Connector
{
public static class ConnectorLoader
{
/// <summary>
/// Collection of all loaded IConnector objects
/// </summary>
public static List<IConnector> Connectors = new List<IConnector>();
/// <summary>
/// Initialize a new IConnector instance and start it
/// </summary>
/// <param name="location">IConnector dll location</param>
/// <param name="name">IConnector full class name</param>
/// <param name="connectionString">Connection string for starting the connector</param>
/// <param name="initData">Additional initialization data</param>
/// <returns>Initialized and started IConnector instance</returns>
public static IConnector Load(string location, string name, string connectionString, ConnectorInitData initData)
{
try
{
IConnector ic = null;
Assembly asm = Assembly.LoadFrom(location);
Type tp = asm.GetType(name);
object p = Activator.CreateInstance(tp);
ic = (IConnector)p;
ic.Connect(connectionString, initData);
Connectors.Add(ic);
return ic;
}
catch
{
throw;
}
}
}
public interface IConnector
{
event EventHandler NewItem;
bool Connect(string connectionString, ConnectorInitData initData);
bool Disconnect();
bool Check();
bool Check(params string[] indexer);
ConnectorData GetNextItem();
bool SetItem(ConnectorData item);
bool SetItem(string referrer);
}
public struct ConnectorInitData
{
public long Position;
public DateTime StartTime;
public string QueryString;
public ConnectorInitData(long Position, DateTime StartTime, string QueryString)
{
this.Position = Position;
this.StartTime = StartTime;
this.QueryString = QueryString;
}
}
public struct ConnectorData
{
public long Identifier;
public List<string> Headers;
public List<Type> Types;
public List<object> Values;
public ConnectorData(long id, List<string> headers, List<Type> types, List<object> values)
{
this.Identifier = id;
this.Headers = headers;
this.Types = types;
this.Values = values;
}
}
}
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Melyik tápegységet vegyem?
- Háztartási gépek
- Kerékpárosok, bringások ide!
- Milyen légkondit a lakásba?
- Megjött a jubileumi Pixel széria
- Békéscsaba és környéke adok-veszek-beszélgetek
- Bitcoin topic
- World of Warships
- Luck Dragon: Asszociációs játék. :)
- További aktív témák...
- Bomba ár! Lenovo ThinkPad L380 - i5-8GEN I 8GB I 512SSD I 13,3" FHD I HDMI I Cam I W11 I Gari!
- LG 55B3 - 55" OLED - 4K 120Hz 1ms - NVIDIA G-Sync - FreeSync Premium - HDMI 2.1 - PS5 és Xbox Ready
- Lenovo IdeaPad S10-2 netbook jó akkumulátorral eladó
- Lenovo ThinkPad P1 G7
- BESZÁMÍTÁS! Asus ROG STRIX Z490-G Gaming alaplap garanciával hibátlan működéssel
Állásajánlatok
Cég: FOTC
Város: Budapest