ObjectManager/Common/PluginHelper.cs
(开头部分) 6KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using ObjectManager.Models.Other;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ObjectManager.Common
{
/// <summary>
/// 插件管理类
/// </summary>
public class PluginHelper
{
List<Models.Other.PluginEntity> allPluginList = null;
List<Models.Other.PluginEntity> usePluginList = null;
List<Models.Other.PluginEntity> updatePluginList = null;
public PluginHelper()
{
Refresh();
}
public void Refresh()
{
try
{
//获取所有插件
//根据地质获取json列表
string allPluginsString = Util.HttpHelper.HttpGet("http://www.elow.online:8080/plugins/pluginsstore.json");
//转换对象
allPluginList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Models.Other.PluginEntity>>(allPluginsString);
//获取本地插件
string usePluginsString = Util.FileHelper.GetFileToString(Util.FileHelper.GetNowPath() + "//pluginsstore.json");
//转换对象
usePluginList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Models.Other.PluginEntity>>(usePluginsString);
if (usePluginList == null)
usePluginList = new List<Models.Other.PluginEntity>();
updatePluginList = new List<Models.Other.PluginEntity>();
foreach (Models.Other.PluginEntity temp in usePluginList)
{
Models.Other.PluginEntity remoteModel = allPluginList.FirstOrDefault(s => s.id == temp.id);
if(remoteModel==null)
{
continue;
}
if(Version.Parse(temp.versionlist[0].version) < Version.Parse(remoteModel.versionlist[0].version))
{
updatePluginList.Add(remoteModel);
}
}
}
catch
{
allPluginList = null;
}
后面还有 130 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
