mirror of
https://github.com/dotnet/MQTTnet.git
synced 2026-10-16 01:03:01 +08:00
28 lines
866 B
C#
28 lines
866 B
C#
// Licensed to the .NET Foundation under one or more agreements.
|
|
// The .NET Foundation licenses this file to you under the MIT license.
|
|
// See the LICENSE file in the project root for more information.
|
|
|
|
using System;
|
|
using System.Reflection;
|
|
|
|
namespace MQTTnet.Tests.Helpers
|
|
{
|
|
public static class ReflectionExtensions
|
|
{
|
|
public static object GetFieldValue(this object source, string fieldName)
|
|
{
|
|
if (source == null)
|
|
{
|
|
throw new ArgumentNullException(nameof(source));
|
|
}
|
|
|
|
var field = source.GetType().GetField(fieldName, BindingFlags.Instance | BindingFlags.NonPublic);
|
|
if (field == null)
|
|
{
|
|
throw new ArgumentException($"Field {fieldName} not found.");
|
|
}
|
|
|
|
return field.GetValue(source);
|
|
}
|
|
}
|
|
} |