Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class MarshalByRefEnumerable<T> : MarshalByRefObject, IEnumerable<T>
- {
- private readonly IEnumerable<T> _wrappedEnumerable;
- public MarshalByRefEnumerable(IEnumerable<T> wrappedEnumerable)
- {
- _wrappedEnumerable = wrappedEnumerable;
- }
- public IEnumerator<T> GetEnumerator()
- {
- return new MarshalByRefEnumerator<T>(_wrappedEnumerable.GetEnumerator());
- }
- IEnumerator IEnumerable.GetEnumerator()
- {
- return new MarshalByRefEnumerator<T>(_wrappedEnumerable.GetEnumerator());
- }
- }
- public class MarshalByRefEnumerator<T> : MarshalByRefObject, IEnumerator<T>
- {
- private readonly IEnumerator<T> _wrappedEnumerator;
- public MarshalByRefEnumerator(IEnumerator<T> wrappedEnumerator)
- {
- _wrappedEnumerator = wrappedEnumerator;
- }
- public void Dispose()
- {
- _wrappedEnumerator.Dispose();
- }
- public bool MoveNext()
- {
- return _wrappedEnumerator.MoveNext();
- }
- public void Reset()
- {
- _wrappedEnumerator.Reset();
- }
- object IEnumerator.Current
- {
- get { return Current; }
- }
- public T Current
- {
- get { return _wrappedEnumerator.Current; }
- }
- }
- public IEnumerable<City> LadeVerzeichnis(string dateiname)
- {
- City[] cities = CreateCities(dateiname);
- return new MarshalByRefEnumerable<City>(cities);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement