97 lines
3.6 KiB
C#
97 lines
3.6 KiB
C#
|
using System;
|
|||
|
using System.Collections.Generic;
|
|||
|
using System.Reflection;
|
|||
|
using System.Text;
|
|||
|
using System.Threading.Tasks;
|
|||
|
|
|||
|
namespace SqlSugar
|
|||
|
{
|
|||
|
public class CommonMethodInfo
|
|||
|
{
|
|||
|
internal object Context { get; set; }
|
|||
|
|
|||
|
public int ExecuteReturnIdentity()
|
|||
|
{
|
|||
|
if (Context == null) return 0;
|
|||
|
var result = Context.GetType().GetMyMethod("ExecuteReturnIdentity", 0).Invoke(Context, new object[] { });
|
|||
|
return (int)result;
|
|||
|
}
|
|||
|
public async Task<int> ExecuteReturnIdentityAsync()
|
|||
|
{
|
|||
|
if (Context == null) return 0;
|
|||
|
var result = Context.GetType().GetMyMethod("ExecuteReturnIdentityAsync", 0).Invoke(Context, new object[] { });
|
|||
|
return await (Task<int>)result;
|
|||
|
}
|
|||
|
public int ExecuteCommand()
|
|||
|
{
|
|||
|
if (Context == null) return 0;
|
|||
|
var result = Context.GetType().GetMyMethod("ExecuteCommand", 0).Invoke(Context, new object[] { });
|
|||
|
return (int)result;
|
|||
|
}
|
|||
|
public async Task<int> ExecuteCommandAsync()
|
|||
|
{
|
|||
|
if (Context == null) return 0;
|
|||
|
var result = Context.GetType().GetMyMethod("ExecuteCommandAsync", 0).Invoke(Context, new object[] { });
|
|||
|
return await (Task<int>)result;
|
|||
|
}
|
|||
|
}
|
|||
|
public class SplitMethodInfo
|
|||
|
{
|
|||
|
internal object Context { get; set; }
|
|||
|
|
|||
|
public int ExecuteCommand()
|
|||
|
{
|
|||
|
if (Context == null) return 0;
|
|||
|
var result = Context.GetType().GetMyMethod("ExecuteCommand", 0).Invoke(Context, new object[] { });
|
|||
|
return (int)result;
|
|||
|
}
|
|||
|
public async Task<int> ExecuteCommandAsync()
|
|||
|
{
|
|||
|
if (Context == null) return 0;
|
|||
|
var result = Context.GetType().GetMyMethod("ExecuteCommandAsync", 0).Invoke(Context, new object[] { });
|
|||
|
return await (Task<int>)result;
|
|||
|
}
|
|||
|
}
|
|||
|
public class UpdateCommonMethodInfo
|
|||
|
{
|
|||
|
internal object Context { get; set; }
|
|||
|
|
|||
|
public int ExecuteCommand()
|
|||
|
{
|
|||
|
if (Context == null) return 0;
|
|||
|
var result = Context.GetType().GetMyMethod("ExecuteCommand", 0).Invoke(Context, new object[] { });
|
|||
|
return (int)result;
|
|||
|
}
|
|||
|
public UpdateCommonMethodInfo WhereColumns(params string[] columns)
|
|||
|
{
|
|||
|
var result = Context.GetType().GetMyMethod("WhereColumns", 1, typeof(string[])).Invoke(Context, new object[] { columns });
|
|||
|
UpdateCommonMethodInfo updateCommonMethod = new UpdateCommonMethodInfo();
|
|||
|
updateCommonMethod.Context = result;
|
|||
|
return updateCommonMethod;
|
|||
|
}
|
|||
|
public UpdateCommonMethodInfo UpdateColumns(params string[] columns)
|
|||
|
{
|
|||
|
var result = Context.GetType().GetMyMethod("UpdateColumns", 1, typeof(string[])).Invoke(Context, new object[] { columns });
|
|||
|
UpdateCommonMethodInfo updateCommonMethod = new UpdateCommonMethodInfo();
|
|||
|
updateCommonMethod.Context = result;
|
|||
|
return updateCommonMethod;
|
|||
|
}
|
|||
|
public async Task<int> ExecuteCommandAsync()
|
|||
|
{
|
|||
|
if (Context == null) return 0;
|
|||
|
var result = Context.GetType().GetMyMethod("ExecuteCommandAsync", 0).Invoke(Context, new object[] { });
|
|||
|
return await (Task<int>)result;
|
|||
|
}
|
|||
|
public UpdateCommonMethodInfo SplitTable()
|
|||
|
{
|
|||
|
var newMethod = this.Context.GetType().GetMyMethod("SplitTable", 0);
|
|||
|
var result = newMethod.Invoke(Context, new object[] { });
|
|||
|
return new UpdateCommonMethodInfo()
|
|||
|
{
|
|||
|
Context = result
|
|||
|
};
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
}
|