namespace CQGlobal.BackOffice.Domain.RmsRepository
{
using System;
using CQGlobal.BackOffice.Domain.RmsModel;
using CQGlobal.BackOffice.Service.Types;
using System.Collections.Generic;
using TmsModel = CQGlobal.BackOffice.Domain.TmsModel;
using tmsTypes = CQGlobal.BackOffice.Domain.TmsTypes;
public interface IRiskManagementRepository : IDisposable
{
void DataAffectedByPriceChange(List<Tb_ClosingPrice> prices);
//void DataAffectedByPositionChangeByOrder(List<Tb_OrderImport> orders);
//IEnumerable<string> DataAffectedByPositionChangeByOrder(List<Tb_OrderImport> orders, ref List<RMSSummary> summary);
IEnumerable<string> ExecuteNewOrders(List<Tb_OrderImport> orders, bool simulate = false);
IEnumerable<string> FetchRMSTopics(string search);
IEnumerable<string> FetchRMSTopics(string search, string orderby="AcctNo", int page=0, int size=0);
IEnumerable<RMSDisplay> FetchRMSSummary(string search);
IEnumerable<RMSDisplay> FetchRMSSummary(string search, string orderby = "AcctNo", int page = 0, int size = 0);
IEnumerable<RMSDisplay> FetchRMSSummaryByTopic(List<string> topics, long companyId);
IEnumerable<string> InsertRiskManagementSummaryRemarks(Tb_RiskManagementSummaryRemarks remark);
IEnumerable<string> UpdateRiskManagementSummaryRemarks(Tb_RiskManagementSummaryRemarks remark);
IEnumerable<string> DeleteRiskManagementSummaryRemarks(Tb_RiskManagementSummaryRemarks remark);
IEnumerable<string> DeleteRiskManagementSummaryRemarks(Guid recordId);
IEnumerable<Tb_RiskManagementSummaryRemarks> FetchSummaryRemarks(string acctNo, long companyId, int period = 0);
#region "RMS details"
IEnumerable<Tb_CashRPValuationCollateral> FetchValuationCollateral(long companyId, string acctNo = null, string currCd = null, long fundSourceID = 0);
IEnumerable<Tb_CustodyAssetsRPValuationCollateral> FetchValuationCollateral(long companyId, string acctNo = null, string currCd = null, long fundSourceID = 0, long instrumentId = 0, long productId = 0);
IEnumerable<Tb_NonEquityAssetsValuationCollateral> FetchValuationCollateral(long companyId, string acctNo = null, string assetNo = null);
IEnumerable<TmsModel.Tb_Transactions> FetchTMSTransactions(long companyId, string acctNo = null, string transNo = null, string transGroupNo = null, string currCd = null, long fundSourceID = 0);
IEnumerable<Tb_ContractOutstanding> FetchOutstandingContracts(long companyId, string acctNo = null, string contractNo = null, short contractPartNo = -1, string currCd = null, long fundSourceID = 0);
IEnumerable<TmsModel.Tb_ContractOutstanding> FetchTMSOutstandingContracts(long companyId, string acctNo = null, string contractNo = null, short contractPartNo = -1, string currCd = null, long fundSourceID = 0);
IEnumerable<Tb_OrderImport> FetchOrders(long companyId, string acctNo = null, long orderNo = 0, long subOrderNo = -1, string currCd = null);
IEnumerable<TmsModel.Tb_ContractOutstanding> FetchExecutedOrdersAndTMSContracts(long companyId, string acctNo = null, string currCd = null);
Tb_Date FetchBusinessDate(long companyId = 0);
#endregion "RMS details"
}
}
[LogOperation]
[LogServiceErrors]
[AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)]
[ServiceBehavior(ConcurrencyMode = ConcurrencyMode.Multiple, InstanceContextMode = InstanceContextMode.PerCall)]
public class RmsOrchestrationContext : EntityService<IRiskManagementRepository>, CQGlobal.BackOffice.Service.Types.Contracts.IRmsContract
{
public string DoWork(string work)
{
//System.Diagnostics.Trace.WriteLine("Called From Service");
return string.Format("You entered: {0}", work);
}
public IEnumerable<RMSDisplay> SearchSummary(string filter,string ordering="AccountNo",int pageNo=0, int pageSize=0)
{
try
{
using (IRiskManagementRepository repo = new RiskManagementRepository())
{
return repo.FetchRMSSummary(filter, ordering, pageNo, pageSize);
}
}
catch (Exception ex)
{
throw ex;
}
finally
{
}
}
namespace CQGlobal.BackOffice.Service.Types
{
using System;
using System.Runtime.Serialization;
using System.Text;
using System.Collections.Generic;
[DataContract(IsReference = true, Namespace = "http://www.cqglobal.com/rms/")]
[Serializable]
public class RMSDisplay
{
[DataMember]
public System.DateTime ReportDate { get; set; }
[DataMember]
public string RecordType { get; set; }
[DataMember]
public string AggregateLevel { get; set; }
[DataMember]
public string AcctNo { get; set; }
[DataMember]
public long CompanyId { get; set; }
[DataMember]
public string CurrCd { get; set; }
[DataMember]
public int SchemeId { get; set; }
[DataMember]
public decimal ExchRate { get; set; }
[DataMember]
public decimal LedgerBFBalance { get; set; }
[DataMember]
public decimal EquitySettlement { get; set; }
[DataMember]
public decimal Adjustment { get; set; }
[DataMember]
public decimal RealisedPL { get; set; }
[DataMember]
public decimal CommissionCharges { get; set; }
[DataMember]
public decimal OptionPremium { get; set; }
[DataMember]
public decimal LedgerRPBalance { get; set; }
[DataMember]
public decimal CollateralRPBalance { get; set; }
[DataMember]
public decimal UnrealisedPLBalance { get; set; }
[DataMember]
public decimal MarginIM { get; set; }
[DataMember]
public decimal MarginMM { get; set; }
[DataMember]
public decimal MarginIMExcessDeficit { get; set; }
[DataMember]
public decimal MarginIMRPExcessDeficit { get; set; }
[DataMember]
public decimal MarginMMExcessDeficit { get; set; }
[DataMember]
public decimal MarginMMRPExcessDeficit { get; set; }
[DataMember]
public System.DateTime LastUpdated { get; set; }
[DataMember]
public string AcctExecutiveCd { get; set; }
[DataMember]
public Nullable<System.Guid> RecordId { get; set; }
[DataMember]
public string Topic { get; set; }
[DataMember]
public string Remarks { get; set; }
[DataMember]
public int Page { get; set; }
[DataMember]
public int Size { get; set; }
[DataMember]
public int TotalCount { get; set; }
[DataMember]
public List<string> ValidationErrors { get; set; }
*[DataMember]
public string ClientName { get; set; }*
#region IExtensibleDataObject Members
public ExtensionDataObject ExtensionData { get; set; }
#endregion IExtensibleDataObject Members
}
}
我在visual studio 2010版本中編寫了我的服務。然後我將它升級到Visual Studio 2012.當我將屬性添加到我的合同中時,ClientName對此屬性獲得了空值。我已經嘗試在字段中輸入順序,但我仍然沒有得到我所期望的值,即使我對該值進行了硬編碼。我也嘗試回收AppPool,重啓我的電腦仍然有錯誤。對不起,我沒有告訴你這個函數的實際實現repo.FetchRMSSummary(過濾器,排序,pageNo,pageSize)。當我在服務器端追蹤它時,它有一個值,但是當我使用服務時,我無法獲得正確的值。我的房產成爲空對象,但其餘的舊房產具有正確的價值。wcf合同添加屬性在現有合同上得到空值
請幫幫我。
您是否更新客戶端的參考? – Tim 2013-04-27 05:48:40
是的,我更新了我的客戶。我刪除了引用和附加參考再次與更新的dll – Kline 2013-04-27 09:06:08