我正在写一个文本文件,每次我写,我想清除文本文件.
try
{
string fileName = "Profile//" + comboboxSelectProfile.SelectedItem.ToString() + ".txt";
using (StreamWriter sw = new StreamWriter(("Default//DefaultProfile.txt").ToString(), true))
{
sw.WriteLine(fileName);
MessageBox.Show("Default is set!");
}
DefaultFileName = "Default//DefaultProfile.txt";
}
catch
{
}
Run Code Online (Sandbox Code Playgroud)
我该怎么做呢?我想从DefaultProfile.txt中删除所有以前的内容.
我实际上必须知道从文本文件中删除所有内容的方法或方法(只是一个名称).
我在这个窗口中有一个带按钮和网格的窗口,其中设置了行和列.我正在尝试创建一个按钮,单击该按钮将向网格添加另一行,然后将用户控件分配给该行.
我已经找到了一些方法来在线进行数据网格,但没有为网格添加行定义.任何人都可以为此协助代码吗?
WPF到目前为止:
<DockPanel>
<Button DockPanel.Dock="Top" Height="22" x:Name="AddRow" Click="AddRow_Click">
<TextBlock Text="Add Skill"/>
</Button>
<Grid HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1"/>
<ColumnDefinition Width="1"/>
<ColumnDefinition Width="1"/>
<ColumnDefinition Width="1"/>
<ColumnDefinition Width="1"/>
<ColumnDefinition Width="1"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="1"/>
</Grid.RowDefinitions>
</Grid>
</DockPanel>
Run Code Online (Sandbox Code Playgroud) 我写了一个xml抓取器来接收/解码网站上的xml文件.它主要工作正常,但它总是返回错误:
"远程服务器返回错误:(403)禁止."
对于网站http://w1.weather.gov/xml/current_obs/KSRQ.xml
我的代码是:
CookieContainer cookies = new CookieContainer();
HttpWebRequest webRequest = (HttpWebRequest)HttpWebRequest.Create(Path);
webRequest.Method = "GET";
webRequest.CookieContainer = cookies;
using (HttpWebResponse webResponse = (HttpWebResponse)webRequest.GetResponse())
{
using (StreamReader streamReader = new StreamReader(webResponse.GetResponseStream()))
{
string xml = streamReader.ReadToEnd();
xmldoc.LoadXml(xml);
}
}
Run Code Online (Sandbox Code Playgroud)
抛出GetResponse方法就是例外.我怎么知道发生了什么?
所以我在这个主题上发现了一堆线索,但我认为我找不到适用的线程.
基本上我的.exe加载一个.dll(MyAssembly)文件,它执行序列化和加载.显然它序列化很好.
但是,当我在MyAssembly.dll文件中反序列化文件时,它会爆炸,并显示此帖子标题中的错误.
有人有主意吗?我不明白它怎么找不到调用代码的程序集!
我的代码:
// deserialize
using (var target = new System.IO.FileStream(Path, System.IO.FileMode.OpenOrCreate))
{
var bin = new System.Runtime.Serialization.Formatters.Binary.BinaryFormatter();
var Obj = bin.Deserialize(target);
if (Obj != null)
{
ObjectToStore = (ObjectTypeInMyAssembly)Obj;
}
}
// serialize
using (var target = new System.IO.FileStream(Path, System.IO.FileMode.OpenOrCreate))
{
var bin = new System.Runtime.Serialization.Formatters.Binary.BinaryFormatter();
bin.Serialize(target, ObjectToStore);
}
Run Code Online (Sandbox Code Playgroud) 我有一个本地SQLite数据库
表详细信息
-- Describe PREFIX_LIST
CREATE TABLE PREFIX_LIST(ITEM VARCHAR(25) PRIMARY KEY)
-- Describe SUFFIX_LIST
CREATE TABLE SUFFIX_LIST(ITEM VARCHAR(25) PRIMARY KEY)
-- Describe VALID_LIST
CREATE TABLE VALID_LIST (
"PART1" TEXT,
"PART2" TEXT,
PRIMARY KEY(PART1, PART2)
)
Run Code Online (Sandbox Code Playgroud)
现在这个列表非常庞大,我需要从中保存数据.
这是我的实施.
SQLiteConnection con = null;
SQLiteCommand cmd = null;
Connect(DbPath, ref con, ref cmd);
cmd.CommandText =
"SELECT PART1 || '@' || PART2 FROM VALID_LIST
WHERE NOT EXISTS
(SELECT * FROM PREFIX_LIST WHERE VALID_LIST.PART1 LIKE '%' || ITEM || '%')
AND NOT EXISTS
(SELECT * …Run Code Online (Sandbox Code Playgroud) 我可能没有清楚地解释这一点.但是在部分类内部和每个方法内部创建类有什么缺点?(请看例子)
部分内部示例:
public partial class test: System.Web.UI.Page
{
cSystem oSystem = new cSystem();
protected void Page_Load(object sender, EventArgs e)
{
oSystem.useme();
}
protected void btnSubmit_Click(object sender, EventArgs e)
{
oSystem.usethis();
}
Run Code Online (Sandbox Code Playgroud)
与
每个类中的示例:
public partial class test: System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
cSystem oSystem = new cSystem();
oSystem.useme();
}
protected void btnSubmit_Click(object sender, EventArgs e)
{
cSystem oSystem = new cSystem();
oSystem.usethis();
}
Run Code Online (Sandbox Code Playgroud) 我在我的网站上添加了对以下dll的引用
Google.GData.Client.dll
Google.GData.YouTube.dll
Google.GData.Extensions.dll
它们用于将视频上传到youtube.现在,当我尝试编译我的网站时,它添加了另一个名为Newtonsoft.Json.dll的dll,并且编译失败了
错误4'c:\ Windows\Microsoft.NET\Framework\v4.0.30319\mscorlib.dll'和'g:\ Projects\X\bin\Newtonsoft.Json.dll'中存在类型'System.Func'
我不敢相信谷歌已经发布了一个有这样一个bug的产品,我一定在这里遗漏了什么?
有没有人知道如何解决这个问题?
有没有办法缩短这三个lambda表达式?现在我需要三个步骤才能得到结果.
首先,我查找属于"某人"的所有目标.然后,我在链接表中查找属于这些目标的所有projectId.最终的lambda按其id返回所有项目.
我不禁想到有一种更有效的方式,但我似乎找不到它......
public async Task<List<Project>> GetProjectsFromSomeone(string someone) {
var targetIds = from target in Context.Targets
where target.Someone.ToLower().Contains(someone.ToLower())
select target.Id;
var projectIds = from pt in Context.ProjectTargets
where targetIds.Any(id => id == pt.TargetId)
select pt.ProjectId;
var projects = from prj in Context.Projects
where projectIds.Any(id => id == prj.Id)
select prj;
return await projects.ToListAsync();
}
public class ProjectTarget
{
public int ProjectId { get; set; }
public int TargetId { get; set; }
public Project Project { get; set; }
public …Run Code Online (Sandbox Code Playgroud)