我有一个ObservableCollection,我可以添加和删除集合中的项目.但我无法替换集合中的现有项目.有一种方法可以替换项目并将其反映在我的绑定组件上.
System.Collections.Specialized.NotifyCollectionChangedAction.Replace
Run Code Online (Sandbox Code Playgroud)
任何人都可以告诉我如何做到这一点?
主题表
CREATE TABLE [dbo].[BS_Subject](
[SubjectID] [bigint] IDENTITY(1,1) NOT NULL,
[DepartmentID] [bigint] NOT NULL,
[SubjectName] [varchar](50) NOT NULL,
[SubjectDescription] [varchar](100) NULL,
[SubjectShortCode] [varchar](10) NOT NULL,
CONSTRAINT [PK_Subject] PRIMARY KEY CLUSTERED
(
[SubjectID] ASC
)
Run Code Online (Sandbox Code Playgroud)
SubjectToClass表
CREATE TABLE [dbo].[BS_SubjectToClass](
[SubjectToClassID] [bigint] IDENTITY(1,1) NOT NULL,
[SubjectID] [bigint] NOT NULL,
[ClassID] [bigint] NOT NULL,
CONSTRAINT [PK_BS_SubjectToClass] PRIMARY KEY CLUSTERED
(
[SubjectToClassID] ASC
)
Run Code Online (Sandbox Code Playgroud)
我需要列出Subject表中subjectid不在SubjectToClass指定类的表中的所有行.
我有这个,但无法继续下去
select Distinct(BS_Subject.SubjectID) DepartmentID,
SubjectName, SubjectDescription, SubjectShortCode
from dbo.BS_Subject
where BS_Subject.SubjectID <> (
SELECT …Run Code Online (Sandbox Code Playgroud) 调用
List<PC> _PCList = new List<PC>();
...add Pc to PCList..
WriteXML<List<PC>>(_PCList, "ss.xml");
Run Code Online (Sandbox Code Playgroud)
功能
public static void WriteXML<T>(T o, string filename)
{
string filePath= Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + "\\Genweb2\\ADSnopper\\" + filename;
XmlDocument xmlDoc = new XmlDocument();
XPathNavigator nav = xmlDoc.CreateNavigator();
using (XmlWriter writer = nav.AppendChild())
{
XmlSerializer ser = new XmlSerializer(typeof(List<T>), new XmlRootAttribute("TheRootElementName"));
ser.Serialize(writer, o); // error
}
File.WriteAllText(filePath,xmlDoc.InnerXml);
}
Run Code Online (Sandbox Code Playgroud)
内在的例外
无法转换类型为'System.Collections.Generic.List
1[PC]' to type 'System.Collections.Generic.List1 [System.Collections.Generic.List`1 [PC]]'的对象.
请帮忙
我正在使用Windows 7,VS2010,SqlServer 2008.
我的应用程序从第三方dll(它从另一个必须在后台运行的进程获取数据)中获取数据,并处理数据并通过WCF服务将其发送到前端.
应用程序已完成并完成它应该执行的操作.现在,当我想分发它并在IIS中运行它.我面临一个奇怪的问题.当我在IIS中运行它时,应用程序从dll获取数据它失败并在连接到dll时出错.
由于以下错误,检索具有CLSID {FCEC6861-5866-4F9E9A09-7CC868C30A8B}的组件的COM类工厂失败:80070005访问被拒绝.(来自HRESULT的异常:0x80070005(E_ACCESSDENIED)).
经过一些研究后我发现了组件服务,在DCOM配置中,我将dll的安全性改为每个人.错误停止了.
但是现在我没有得到错误,但是当提供数据的软件关闭时,我没有得到数据.但是我的ASP.net开发服务器可以正常工作.
另外我发现当我以管理员模式运行Visual Studio时,我也必须在管理模式下运行第三方数据软件.
dll引用不会自动复制到bin文件夹中,它放在obj文件夹中我手动复制它但它不起作用.
let GetVal (i,isMin,al, be)=
let b = new Board(board)
if b.SetBoardBool(i) then this.MinMaxAlphaBeta(b, isMin, al, be)
else -2
let valList = seq{
for i =0 to 8 do
yield (GetVal i (not isMin) alphaF betaF , not isMin)
}
Run Code Online (Sandbox Code Playgroud)
我收到一个F#错误说:此值不是函数,无法应用.
valList是int和bool的元组序列,GetVal接受int bool int int并返回int.其中alphaF betaF是可变变量.
我想将媒体元素的位置绑定到它的模型视图。我知道该属性不是依赖属性。所以尝试了这种方式,我在网上找到的代码
<MediaElement Source="{Binding CurrentClip.Path, Converter={StaticResource converter}, UpdateSourceTrigger=PropertyChanged}" Stretch="Uniform" local:MediaElementHelper.Postion="{Binding CurrentClip.Postion}"
Run Code Online (Sandbox Code Playgroud)
媒体元素助手
class MediaElementHelper
{
public static readonly DependencyProperty PostionProperty =
DependencyProperty.RegisterAttached("Position",
typeof(bool), typeof(MediaElement),
new FrameworkPropertyMetadata(false, PostionPropertyChanged));
private static void PostionPropertyChanged(DependencyObject obj, DependencyPropertyChangedEventArgs e)
{
var richEditControl = obj as MediaElement;
if (richEditControl != null)
{
richEditControl.Position = (TimeSpan)e.NewValue;
}
}
public static void SetPostion(UIElement element, TimeSpan value)
{
element.SetValue(PostionProperty, value);
}
public static TimeSpan GetPostion(UIElement element)
{
return (TimeSpan)element.GetValue(PostionProperty);
}
}
Run Code Online (Sandbox Code Playgroud)
[错误] 无法在“MediaElement”类型的“SetPostion”属性上设置“Binding”。“绑定”只能在 DependencyObject 的 DependencyProperty 上设置。
我究竟做错了什么?
我想垂直翻转一个BitmapImage作为原始镜像.这就是我所拥有但旋转不会翻转图像.
var tb = new TransformedBitmap();
BitmapImage bi = Type.Image.Clone();
tb.BeginInit();
tb.Source = bi;
var transform = new RotateTransform(180);
tb.Transform = transform;
tb.EndInit();
Run Code Online (Sandbox Code Playgroud) 我想要一个存储过程为y页数取x个数据行.例如
我有20个datarow我的页面大小是2如果我选择第2页我会得到数据行17,18
我可以使用前200并使用order by来选择第一个和最后一个datarow但是我如何获得它们之间的页面.
@PageNumber INT
As
BEGIN
SELECT COUNT(rate.RateID)/200 FROM dbo.Rate where dbo.Rate.Hourly =0
DECLARE @LastIndex INT
SET @LastIndex= (SELECT TOP 1 rate.RateID FROM dbo.Rate where dbo.Rate.Hourly =0 ORDER BY rate.RateID ASC)
Select TOP 200
[RateID],
[PairID],
[Open],
[Close],
[High],
[Low],
[Difference],
[Average],
[Percentage],
[InfoDate],
[Hourly],
[CaptureDateTime]
From Rate
WHERE Hourly =0 AND RateID >=(@LastIndex+(200* @PageNumber))
ORDER BY [RateID] ASC
Run Code Online (Sandbox Code Playgroud)
结束这是我现在所拥有的,但它不能正常工作
我需要的是一种从列表中选择最后100个元素的方法,如列表
public List<Model.PIP> GetPIPList()
{
if (Repository.PIPRepository.PIPList == null)
Repository.PIPRepository.Load();
return Repository.PIPRepository.PIPList.Take(100);
}
Run Code Online (Sandbox Code Playgroud)
我得到这样的错误
'System.Collections.Generic.IEnumerable'到'System.Collections.Generic.List'.存在显式转换(您是否错过了演员?)
我有一个对象列表,我想发送它认为TCP套接字连接.一种方法是获取对象列表并获取所有值,通过逗号和接收数据将它们分开,另一端和对象中的值.我是否可以发送对象列表,因为它可以在WCF Web服务中完成.你能告诉我怎么样?谢谢!
我之前已经为此创建了一个WCF服务但是因为它有一些无法解决的问题而改变了它.所以我正在创建此客户端服务器应用程序
此外,正在发送的数据每隔几秒刷新一次,很多用户都需要它.经过一些研究,我发现这将是一个更好的选择.
我有这个课程,我通过它发送消息
public void SendMessage(string text)
{
Byte[] bytesSent = Encoding.UTF8.GetBytes(text);
SocketAsyncEventArgs writeEventArgs = new SocketAsyncEventArgs();
writeEventArgs.SetBuffer(bytesSent, 0, bytesSent.Length);
socket.SendAsync(writeEventArgs);
}
Run Code Online (Sandbox Code Playgroud)
但我宁愿首先序列化对象然后发送它.所以我有一个流和需要作为字节数组.
这是我必须接收的数据:
void ReceiveData()
{
try
{
int recv;
string stringData;
while (true)
{
recv = socket.Receive(data);
stringData = Encoding.ASCII.GetString(data, 0, recv);
if (stringData == "bye")
break;
ClientDataRecievedEventArgs sd = new ClientDataRecievedEventArgs(stringData);
DataRecieved(this, sd);
}
stringData = "bye";
byte[] message = Encoding.ASCII.GetBytes(stringData);
socket.Send(message);
socket.Close();
this.Dispose();
return;
}
catch (Exception)
{
socket.Close();
this.Dispose();
}
}
Run Code Online (Sandbox Code Playgroud)
这是我想要的:
SoapFormatter …Run Code Online (Sandbox Code Playgroud)