Imports System.IO Imports System.Xml.Serialization Public Class MultiLanguageDAL #Region "初始化" ''' ''' 初始化 ''' Sub New() StringList = New List(Of String) End Sub #End Region #Region "语言数据" ''' ''' 语言数据 ''' Enum StringEnum #Region "登录界面_8个" ''' 登录界面_语言 Language ''' 登录界面_登录 Login ''' 登录界面_用户名 UserName ''' 登录界面_密码 PassWord ''' 登录界面_自动登录 AutomaticLogin ''' 登录界面_记住密码 RememberPassWord ''' 登录界面_确定 LoginDetermine ''' 登录界面_取消 LoginCancel #End Region #Region "菜单栏界面_28个" ''' ''' 主界面_C系列配置工具 ''' CSeriesConfigTools ''' ''' 主界面_用户管理 ''' Manage ''' ''' 主界面_切换酒店 ''' SwitchHotel ''' ''' 主界面_切换用户 ''' SwitchUser ''' ''' 主界面_网络设置 ''' NetworkSettings ''' ''' 主界面_串口设置 ''' SerialportSettings ''' ''' 主界面_退出 ''' HomeExit ''' ''' 主界面_帮助 ''' HomeHelp ''' ''' 主界面_关于 ''' About ''' ''' 主界面_当前酒店 ''' TheCurrentHotel ''' ''' 主界面_项目编码 ''' ProjectCode ''' ''' 主界面_酒店名称 ''' HotelName ''' ''' 主界面_欢迎您 ''' WelcomeYou ''' ''' 主界面_酒店列表 ''' HotelList ''' ''' 主界面_请选择您的酒店 ''' PleaseSelectYourHotel ''' ''' 主界面_所有酒店 ''' AllHotel ''' ''' 主界面_选中 ''' Checked ''' ''' 主界面_松开 ''' Loosen ''' ''' 主界面_本地IP ''' LocalIP ''' ''' 主界面_本地端口 ''' LocalPort ''' ''' 主界面_远程IP ''' RemoteIP ''' ''' 主界面_远程端口 ''' RemotePort ''' ''' 主界面_打开连接 ''' OpenConnection ''' ''' 主界面_断开连接 ''' CloseConnection ''' ''' 主界面_串口名称 ''' SerialPortName ''' ''' 主界面_波特率 ''' Baud ''' ''' 主界面_打开串口 ''' OpenTheSerialPort ''' ''' 主界面_关闭串口 ''' CloseTheSerialPort #End Region #Region "主机管理界面_32个" ''' ''' 主界面_主机管理 ''' HostManage ''' ''' 主界面_搜索 ''' Search ''' ''' 主界面_广播 ''' Radio ''' ''' 主界面_直连 ''' DirectlyConn ''' ''' 主界面_主机列表 ''' HostList ''' ''' 主界面_全选 ''' SelectAll ''' ''' 主界面_勾选 ''' Ticked ''' ''' 主界面_升级 ''' UpgradeProgress ''' ''' 主界面_按键 ''' Buttons ''' ''' 主界面_房号ID ''' RoomNumberID ''' ''' 主界面_房号 ''' RoomNumberRemark ''' ''' 主界面_房型ID ''' RoomTypeID ''' ''' 主界面_房型 ''' RoomTypeRemark ''' ''' 主界面_房态 ''' RoomStatus ''' ''' 主界面_MAC ''' MAC ''' ''' 主界面_机型编号 ''' ModelNumber ''' ''' 主界面_软件版本 ''' SoftwareVersion ''' ''' 主界面_配置版本 ''' ConfigVersion ''' ''' 主界面_IP地址 ''' IPAddress ''' ''' 主界面_端口 ''' Port ''' ''' 主界面_网关 ''' Gateway ''' ''' 主界面_子网掩码 ''' SubnetMask ''' ''' 主界面_DNS ''' DNS ''' ''' 主界面_服务器 ''' Server ''' ''' 主界面_主机时间 ''' HostTime ''' ''' 主界面_季节 ''' Season ''' ''' 主界面_锁定 ''' Lock ''' ''' 主界面_授权时间 ''' PrivilegedTime ''' ''' 主界面_授权到期时间 ''' AuthorizationExpirationTime ''' ''' 主界面_房间备注 ''' RoomRemark ''' ''' 主界面_Core ''' Core ''' ''' 主界面_Model ''' Model #End Region #Region "固件升级界面_25个" ''' ''' 主界面_固件升级 ''' FirmwareUpdate ''' ''' 主界面_文件路径 ''' FilePath ''' ''' 主界面_浏览 ''' Browse ''' ''' 主界面_升级 ''' Upgrade ''' ''' 主界面_设置项目信息 ''' SettingProjectInfo ''' ''' 主界面_出租 ''' Rent ''' ''' 主界面_退房 ''' CheckingOut ''' ''' 主界面_空房 ''' VacantRoom ''' ''' 主界面_待租 ''' ForRent ''' ''' 主界面_春 ''' Spring ''' ''' 主界面_夏 ''' Summer ''' ''' 主界面_秋 ''' Autumn ''' ''' 主界面_冬 ''' Winter ''' ''' 主界面_正常 ''' Normal ''' ''' 主界面_设置 ''' HomeSet ''' ''' 主界面_清空 ''' Clear ''' ''' 主界面_更新云端数据 ''' UpdateCloudData ''' ''' 主界面_勾选下发 ''' ChooseIssued ''' ''' 主界面_匹配信息 ''' MatchTheInformation ''' ''' 主界面_CKS ''' CKS ''' ''' 主界面_数据类型 ''' DataType ''' ''' 主界面_主机数据 ''' HostData ''' ''' 主界面_Hex解析 ''' HexParsing ''' ''' 主界面_匹配 ''' Matching ''' ''' 主界面_不匹配 ''' Mismatching #End Region #Region "配置下发界面_12个" ''' ''' 主界面_配置下发 ''' ConfigIsIssued ''' ''' 主界面_提示 ''' Prompt ''' ''' 主界面_等待中 ''' Waiting ''' ''' 主界面_读取设置 ''' ReadSettings ''' ''' 主界面_设置MAC ''' SetMAC ''' ''' 主界面_配置下发信息 ''' ConfigIssuedInfo ''' ''' 主界面_查询设备状态 ''' QueryDeviceStatus ''' ''' 主界面_设备类型 ''' DeviceType ''' ''' 主界面_设备地址 ''' DeviceAddress ''' ''' 主界面_设备状态 ''' DeviceState ''' ''' 主界面_在线 ''' Online ''' ''' 主界面_离线 ''' Offline #End Region #Region "通讯测试界面_30个" ''' ''' 主界面_通讯测试 ''' CommunicationTest ''' ''' 主界面_系统信息 ''' SystemInfo ''' ''' 主界面_设备信息 ''' DeviceInfo ''' ''' 主界面_网络信息 ''' NetworkInfo ''' ''' 主界面_逻辑信息 ''' LogicalInfo ''' ''' 主界面_临时信息 ''' TemporaryInfo ''' ''' 主界面_清除记录 ''' ClearRecord ''' ''' 主界面_通讯记录 ''' CommunicationRecords ''' ''' 主界面_机型测试 ''' ModelTest ''' ''' C5机型_C5 ''' C5 ''' ''' 测试界面_继电器控制 ''' RelayControl ''' ''' 测试界面_IO输出 ''' IOOutput ''' ''' 测试界面_IO输入 ''' IOInput ''' ''' 测试界面_音乐 ''' Music ''' ''' 测试界面_巡回测试 ''' ItinerateTest ''' ''' 测试界面_输入检测 ''' TheInputTest ''' ''' 测试界面_播放文件夹 ''' PlayFolder ''' ''' 测试界面_播放文件序号 ''' PlayFileNumber ''' ''' 测试界面_播放 ''' Play ''' ''' 测试界面_音乐文件夹 ''' MusicFolder ''' ''' 测试界面_提示音文件夹 ''' SoundPromptFolder ''' ''' 测试界面_助眠文件夹 ''' SleepingFolder ''' ''' 测试界面_门铃文件夹 ''' DoorbellFolder ''' ''' 测试界面_欢迎词文件夹 ''' WelcomeMessageFolder ''' ''' 测试界面_助眠文件夹1-冥想 ''' SleepAidFolder1Meditate ''' ''' 测试界面_助眠文件夹2-海浪 ''' SleepAidFolder2SeaWave ''' ''' 测试界面_助眠文件夹3-深林 ''' SleepAidFolder3Forest ''' ''' C12机型_C12 ''' C12 ''' ''' C12机型_调光 ''' Dimming ''' ''' C12机型_调光测试 ''' DimmingTest #End Region #Region "研发使用界面_19个" ''' ''' 主界面_研发使用 ''' DevelopmentUse ''' ''' 主界面_使能 ''' Enabled ''' ''' 主界面_使用下面的 IP 地址 ''' UseTheFollowingIPAddress ''' ''' 主界面_MQTT ''' MQTT ''' ''' 主界面_阿里云 ''' AliCloud ''' ''' 主界面_产品密钥 ''' ProductKey ''' ''' 主界面_设备名称 ''' DeviceName ''' ''' 主界面_设备秘钥 ''' DeviceSecretKey ''' ''' 主界面_发布会话 ''' ReleaseSession ''' ''' 主界面_订阅会话 ''' SubscribeSession ''' ''' 主界面_在线时间 ''' OnlineTime ''' ''' 主界面_域名 ''' DomainName ''' ''' 主界面_客户端ID ''' ClientID ''' ''' 主界面_串口打印信息 ''' SerialPortInfo ''' ''' 主界面_设置核心参数 ''' SettingCoreParam ''' ''' 主界面_主机模块型号 ''' HostModuleNumber ''' ''' 主界面_主板型号 ''' MainboardModelNumber ''' ''' 主界面_设置参数 ''' SetTheParam ''' ''' 主界面_读取参数 ''' ReadTheParam #End Region #Region "提示信息_70个" ''' ''' 登录界面_登录失败 ''' LoginFailed ''' ''' 登录界面_用户不存在 ''' NoSuchUser ''' ''' 登录界面_数据库连接成功! ''' DatabaseConnectionSuccessful ''' ''' 登录界面_数据库连接失败! ''' DatabaseConnectionFailed ''' ''' 登录界面_无法访问云端数据! ''' UnableToAccessCloudData ''' ''' 登录界面_密码错误,请重试! ''' IncorrectPasswordPleaseTryAgain ''' ''' 登录界面_请输入用户账号 ''' PleaseEnterYourUserAccount ''' ''' 登录界面_请输入密码 ''' PleaseEnterYourPassword ''' ''' 主界面_请选择您名下的酒店 ''' PleaseSelectTheHotelUnderYourName ''' ''' 主界面_请先选择有效串口 ''' SelectAValidSerialPortFirst ''' ''' 主界面_请先选择有效波特率 ''' SelectTheValidBaudRateFirst ''' ''' 主界面_串口打开失败,原因 ''' SerialPortOpenTheFailedReason ''' ''' 主界面_串口发送错误!原因 ''' SerialPortSendingErrorReason ''' ''' 主界面_串口接收数据失败,原因 ''' ReceiveSerialPortDataFailedReason ''' ''' 主界面_巡回测试成功 ===================暂未使用 ''' ItinerateTestSucceed ''' ''' 主界面_巡回测试失败 ''' ItinerateTestFailed ''' ''' 主界面_Port输入不合法 ''' ThePortInputIsInvalid ''' ''' 主界面_IP输入不合法 ''' TheIPAddressIsInvalid ''' ''' 主界面_请打开网络或者串口 ''' PleaseOpenTheNetworkOrSerialPort ''' ''' 主界面_未知命令 ''' UnknownCommand ''' ''' 主界面_未知状态 ''' UnknownState ''' ''' 主界面_升级就绪 ''' ReadyUpgrade ''' ''' 主界面_升级完成 ''' UpgradeAccomplish ''' ''' 主界面_升级失败 ''' UpgradeFailed ''' ''' 主界面_文件块数错误 ''' IncorrectNumberOfFileBlocks ''' ''' 主界面_文件类型错误 ''' FileTypeError ''' ''' 主界面_文件MD5值错误 ===================暂未使用 ''' TheMD5ValueOfTheFileIsIncorrect ''' ''' 主界面_设置成功 ''' SetTheSuccess ''' ''' 主界面_设置失败 ''' SetTheFailed ''' ''' 主界面_读取完成 ''' ReadAccomplish ''' ''' 主界面_下发成功 ''' IssuedTheSuccessful ''' ''' 主界面_下发失败 ''' IssuedTheFailure ''' ''' 主界面_当前房间未配置 ''' TheCurrentRoomIsNotConfigured ''' ''' 主界面_请选择项目编号 ''' PleaseSelectTheItemNumber ''' ''' 主界面_请选择房间编号 ''' PleaseSelectRoomNumber ''' ''' 主界面_项目编号为空 ''' TheItemNumberIsEmpty ''' ''' 主界面_配置版本为空 ''' TheConfigVersionIsEmpty ''' ''' 主界面_项目编码不匹配 ''' ProjectCodesDoNotMatch ''' ''' 主界面_设备为空 ''' EquipmentIsEmpty ''' ''' 主界面_准备文件 ''' ReadyToFile ''' ''' 主界面_房号不可批量下发 ''' RoomNumbersCannotBeDeliveredInBatches ''' ''' 主界面_房间注释不可批量下发 ''' RoomNotesCannotBeDeliveredInBatches ''' ''' 主界面_请选择要下发的信息和主机 ''' SelectTheInformationToBeDeliveredAndTheHost ''' ''' 主界面_正在解析Hex文件 ''' ParsingHexFile ''' ''' 主界面_解析完成 ''' ParsingIsComplete ''' ''' 主界面_请搜索要升级的主机 ''' SearchForTheHostToUpgrade ''' ''' 主界面_请扫描MAC地址 ''' PleaseScanTheMACAddress ''' ''' 主界面_全部 ''' All ''' ''' 主界面_房号ID不匹配 ''' RoomIDSDoNotMatch ''' ''' 主界面_房型ID不匹配 ''' RoomIDDoesNotMatch ''' ''' 主界面_房号与房号ID不匹配 ''' TheRoomNumberDoesNotMatchTheRoomID ''' ''' 主界面_房型与房型ID不匹配 ''' TheRoomTypeDoesNotMatchTheRoomID ''' ''' 主界面_房号ID与房型ID不匹配 ''' TheRoomIDDoesNotMatchTheRoomTypeID ''' ''' 主界面_房号ID与MAC地址不匹配 ''' TheRoomIDDoesNotMatchTheMACaddress ''' ''' 主界面_请选择需要配置的主机 ''' SelectTheHostToBeConfigured ''' ''' 主界面_不能为空 ''' NOTNULL ''' ''' 主界面_正在解析Bin文件 ''' ParsingBinFile ''' ''' 主界面_请选择需要升级的文件 ''' SelectTheFileYouWantToUpgrade ''' ''' 主界面_测试中 ''' Test ''' ''' 主界面_串口 ''' SerialPort ''' ''' 主界面_停止 ''' Stops ''' ''' 主界面_房号不能为空 ''' TheRoomNumberCannotBeEmpty ''' ''' 主界面_请选择要读取的项目信息项 ''' PleaseSelectTheItemInfoItemToRead ''' ''' 主界面_未查询到登录信息 ''' NoLoginInformationIsDisplayed ''' ''' 主界面_请检查网络是否连接成功 ''' CheckWhetherTheNetworkConnectionIsSuccessful ''' ''' 主界面_登录超时 ''' LoginTimeout ''' ''' 主界面_DHCP ''' DHCP ''' ''' 主界面_自定义云 ''' CustomCloud ''' ''' 主界面_云 ''' Cloud ''' ''' 主界面_后台 ''' Background #End Region #Region "后续新增_6个" ''' ''' 新增_批量数据下发 ''' BatchDataDelivery ''' ''' 新增_云端数据 ''' CloudData ''' ''' 新增_刷新 ''' Refresh ''' ''' 新增_对比 ''' Contrast ''' ''' 新增_批量配置 ''' BatchConfig #End Region #Region "弃用" '''' '''' 主界面_连接 '''' 'Connection '''' '''' 主界面_配置版本 '''' 'ConfigTheVersion '''' '''' 主界面_全部酒店 '''' 'AllHotels '''' '''' 主界面_MAC下发 '''' 'MACIssued '''' ''''C5测试界面_C5 巡回测试 '''' 'C5ItinerateTest '''' '''' 主界面_要修改的文件信息如下 '''' 'TheFileInformationToBeModifiedIsAsFollows '''' '''' 主界面_修改完成 '''' 'ModifiedToComplete '''' '''' 主界面_项目名称 '''' 'ProjectName '''' '''' 主界面_项目地址 '''' 'ProjectAddress '''' '''' 主界面_是否继续修改 '''' 'WhetherToContinueToModify '''' '''' 主界面_警告 '''' 'Warning #End Region End Enum #End Region #Region "序列化XML" ''' ''' 语言名称 ''' ''' Public Property Name As String ''' ''' 语言版本 ''' ''' Public Property Version As Integer Public StringList As List(Of String) ''' ''' 初始化语言数据 ''' ''' Public Sub InitializeByDataTable(dtTable As DataTable) StringList.Clear() For index = 0 To dtTable.Rows.Count - 1 StringList.Add(dtTable(index)(0).ToString) Next End Sub ''' ''' 将类对象序列化为xml文件 ''' ''' ''' Public Shared Sub SerializeToXml(Of T)(path As String, srcObject As T) Dim serializer As New XmlSerializer(GetType(T)) Dim xmlString As String Using writer As New StringWriter serializer.Serialize(writer, srcObject) xmlString = writer.ToString() End Using Using ws As New StreamWriter(path) ws.Write(xmlString) End Using End Sub ''' ''' 从Xml文件中反序列化成指定类 ''' ''' ''' ''' Public Shared Function DeserializeFormXml(Of T)(path As String) As T Using reader As New StreamReader(path) Return New XmlSerializer(GetType(T)).Deserialize(reader) End Using End Function #End Region End Class