我有一个SP Online网站,我存储文档,添加/检索文档没有问题,但在删除流程中,我在检索File对象时遇到错误.
public static void DeleteDocument()
{
using (ClientContext ctx = ClientContextFactory.Create("https://my-sponline-site.sharepoint.com/sites/documentsite"))
{
Web web = ctx.Web;
ctx.Load(web);
ctx.ExecuteQuery();
string relativeUrl = "/Documents/images.jpg";
File file = web.GetFileByServerRelativeUrl(relativeUrl);
ctx.Load(file);
file.DeleteObject();
ctx.ExecuteQuery();
}
}
Run Code Online (Sandbox Code Playgroud)
该文件的完整文件是" https://my-sponline-site.sharepoint.com/sites/documentsite/Documents/images.jpg "(无法访问2016-12-07)
当我执行此操作时,我得到一个ServerException:
价值不在预期范围内.
上下文工作正常,因为我能够从库中添加/检索项目,上下文用户是管理员.
我尝试将web url添加到relativeUrl,所以它将是"/documentsite/Documents/images.jpg",但我得到了同样的错误.
我似乎无法弄清楚这一点,有什么建议吗?
谢谢
给定一个构造函数
public MyObject(int id){
ID = id;
}
Run Code Online (Sandbox Code Playgroud)
两个枚举:
public enum MyEnum1{
Something = 1,
Anotherthing = 2
}
public enum MyEnum2{
Dodo = 1,
Moustache= 2
}
Run Code Online (Sandbox Code Playgroud)
是否可以传入通用枚举作为构造函数的参数?我正在寻找一个解决方案:
public MyObject(enum someEnum){
ID = (int)someEnum;
}
Run Code Online (Sandbox Code Playgroud)
所以你可以这样做:
var newObject = new MyObject(MyEnum1.Something);
var anotherObject = new MyObject(MyEnum2.Dodo);
Run Code Online (Sandbox Code Playgroud) 我知道yield关键字表示它出现的方法是迭代器.我只是想知道它是如何工作的List<T>.AddRange.
我们使用下面的例子:
static void Main()
{
foreach (int i in MyInts())
{
Console.Write(i);
}
}
public static IEnumerable<int> MyInts()
{
for (int i = 0; i < 255; i++)
{
yield return i;
}
}
Run Code Online (Sandbox Code Playgroud)
因此,在每个yield之后的上述示例中,在foreach循环中返回一个值Main并将其打印到控制台.
如果我们改为Main:
static void Main()
{
var myList = new List<int>();
myList.AddRange(MyInts());
}
Run Code Online (Sandbox Code Playgroud)
这是如何运作的?是否AddRange为yield语句返回的每个int调用,还是在添加整个范围之前以某种方式等待所有255个值?
这不是这个问题的重复:VB.NET Stacking Select Switch Statements就像在Switch C#/ Java中一样.这里提供的答案没有回答我的问题.答案就是说我已经知道VB .Net有一个自动中断.我问是否有任何解决方法.
在C中,可以执行以下操作:
int i = 1;
switch (i) {
case 1 :
//Do first stuff
break;
case 2 :
//Do second stuff
//Fall Through
case 3 :
//Do third stuff
break;
}
Run Code Online (Sandbox Code Playgroud)
基本上
i是1,app会做第一件事.i是2,它将做第二和第三个东西.i是3,它将只做第三个东西.由于Select caseVB .Net 中每个语句的结尾都有自动中断,有没有人知道如何在VB .Net中实现这一点?
以一种漂亮而美丽的方式,我的意思是......
我正在制作一个程序,需要查看一段文字,并查找某些关键字/关键字出现的次数.它还必须突出显示文本中的每个关键词.
我已经设法制作界面,它现在可以跟踪单词出现的次数,但我真的很困惑如何突出显示关键字的位置.我将在下面发布我的代码,非常感谢有关如何在richtextbox中搜索和突出显示文本的任何帮助.由于这是在WPF中,因此无法使用明显的richtextbox.find().
class TextAnalyser
{
public int FindNumberOfOccurances(List<string> keywords, string email)
{
int occurances = 0;
foreach (string keyword in keywords)
{
occurances += email.ToUpper().Split(new string[] { keyword.ToUpper() }, StringSplitOptions.None).Count() - 1;
}
return occurances;
}
public void TurnTextRed(List<string> keywords, string email, RichTextBox TextBox)
{
foreach(string keyword in keywords)
{
}
}
public List<string> ConvertTextToList(string text)
{
char[] splitChars = {};
string[] ArrayText = text.Split( splitChars, StringSplitOptions.RemoveEmptyEntries);
return ArrayText.ToList<string>();
}
public string GetStringFromTextBox(RichTextBox TextBox)
{
var textRange = new TextRange( …Run Code Online (Sandbox Code Playgroud) 我希望将日期 (22/03/2016 23:59:59) 格式化为以毫秒为单位的字符串。
dr.GetDateTime(1).ToString("yyyy-MM-dd hh:mm:ss")
.ToString("yyyy-MM-dd").ToString("hh':'mm':'ss")我有一个Items列表,每个包含一个Type整数字段.
我想过滤我的列表,只获得与给定的整数列表匹配的项目.
我现在的代码有效,但我知道它可以优化.
Class Item
{
int ID;
//Other fields & methods that are irrelevant here
}
//Selection method
IEnumerable<Item> SelectItems(List<Item> allItems, List<int> toSelect)
{
return allItems.Where(x => toSelect.Contains(x.ID));
}
Run Code Online (Sandbox Code Playgroud)
我遇到的问题是我迭代allItems并在每次迭代中迭代toSelect.
我觉得有可能更有效但我不知道如何用Linq实现这一目标.
这可能也是一个已经被问到的问题,因为我不知道这是如何用英语调用的.这感觉有点愚蠢,因为我不知道如何在seach引擎中正确地配置它.
我目前正在运行此代码,它将日期显示为如下所示的输出.
Dim started As DateTime = DateTime.Now
Dim date As DateTime = started.Add(diaryItem.Duration)
Run Code Online (Sandbox Code Playgroud)
输出:23/03/2016 17:00:00
是否可以删除日期并仅显示时间?
在VB .Net中,可以使用内联If语句,如下所示
if a Then ret = "A" Else ret = "Not A"
Run Code Online (Sandbox Code Playgroud)
我知道也可以嵌套这些语句.我知道这可能不是一个好的做法,因为可读性下降了......
If a Then If b Then ret = "A & B" Else ret = "A & Not B" Else ret = "Not A"
Run Code Online (Sandbox Code Playgroud)
将按如下方式评估:
If a Then
If b Then
ret = "A & B"
Else
ret = "A & Not B"
End If
Else
ret = "Not A"
End If
Run Code Online (Sandbox Code Playgroud)
现在如果我删除最后一个Else语句,我得到这个:
If a Then If b Then ret = "A & …Run Code Online (Sandbox Code Playgroud) 我有以下CRC功能:
public static ushort ComputeCRC16(byte[] data)
{
ushort i, j, crc = 0;
int size = data.Length;
for (i = 0; i < size - 2; i++)
{
crc ^= (ushort)(data[i] << 8);
for (j = 0; j < 8; j++)
{
if ((crc & 0x8000) != 0) /* Test for bit 15 */
{
crc = (ushort)((crc << 1) ^ 0x1234); /* POLYNOMIAL */
}
else
{
crc <<= 1;
}
}
}
return crc;
}
Run Code Online (Sandbox Code Playgroud)
我一直在试图用它来计算从一个文件即大约800 KB一个CRC16,但它需要永远,我的意思是五分钟后,价值i …
c# ×6
vb.net ×4
.net ×1
c ×1
crc ×1
crc16 ×1
enums ×1
foreach ×1
generics ×1
highlighting ×1
if-statement ×1
linq ×1
list ×1
nested ×1
select-case ×1
sharepoint ×1
string ×1
text ×1
wpf ×1