本文整理汇总了C#中Line.Select方法的典型用法代码示例。如果您正苦于以下问题:C# Line.Select方法的具体用法?C# Line.Select怎么用?C# Line.Select使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Line
的用法示例。
在下文中一共展示了Line.Select方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Calculate
public void Calculate()
{
{
var x1 = nums[0];
for (int i = 1; i < nums.Count; i++)
{
var x2 = nums[i];
foreach (var x3 in nums.Where(x => x != x1 && x != x2))
{
foreach (var x4 in nums.Where(x => x != x1 && x != x2 && x != x3))
{
var x5 = nums.Find(x => x != x1 && x != x2 && x != x3 && x != x4);
var lines = new Line[5];
lines[0] = new Line(x1, x2);
lines[1] = new Line(x2, x3);
lines[2] = new Line(x3, x4);
lines[3] = new Line(x4, x5);
lines[4] = new Line(x5, x1);
lines[0].Next = lines[1];
lines[1].Next = lines[2];
lines[2].Next = lines[3];
lines[3].Next = lines[4];
lines[4].Next = lines[0];
if(lines.Select(x => x.InnerTotal).Distinct().Count() < 5)
continue;
var min = lines.Min(x => x.InnerTotal);
bool isOk = true;
foreach (var num in all.Except(nums))
{
var first = lines.FirstOrDefault(x => x.InnerTotal + num == min + 10);
if(first == null)
{
isOk = false;
break;
}
first.Insert(num);
}
if(isOk)
{
list.Add(lines);
}
}
}
}
}
}
示例2: Main
public static void Main(string[] args)
{
if (4 != args.Length)
{
Console.WriteLine(
@"laughing-octo-ironman: Breaks a text file up into many xml documents. Creates a nifty coding challenge!
Usage: laughing-octo-ironman [text file] [template xml] [seed] [destination]
[text file]: A text file to break up, each line will result in a new
xml file with links to other lines
[template xml]: An xml file to use as a template. Must have a tag with
its text contents @[email protected] for the line, @[email protected] for
the line number, and many @[email protected] for ids of other lines
[seed] A seed for the random number generator
[destination] Where to place the generated files
");
return;
}
try
{
var textFilePath = args[0];
var templateXmlPath = Path.GetFullPath(args[1]);
var extension = Path.GetExtension(templateXmlPath);
var seedText = args[2];
var destinationPath = Path.GetFullPath(args[3]);
int seed;
try
{
seed = int.Parse(seedText);
}
catch
{
Console.WriteLine("Can not parse seed: {0}", seedText);
return;
}
var random = new Random(seed);
var textFile = File.ReadAllLines(textFilePath);
var lines = new Line[textFile.Length];
for (var ctr = 0; ctr < textFile.Length; ctr++)
{
var line = new Line(
number: ctr,
contents: textFile[ctr].Replace("\r", string.Empty).Replace("\n", string.Empty),
random: random);
lines[ctr] = line;
}
var templateXml = new XmlDocument();
templateXml.Load(templateXmlPath);
var lineNode = GetNode("@[email protected]", templateXml.ChildNodes);
var lineNumberNode = GetNode("@[email protected]", templateXml.ChildNodes);
var idNodes = GetNodes("@[email protected]", templateXml.ChildNodes).ToArray();
if (0 == idNodes.Length)
{
throw new Exception("There are no nodes with contents @[email protected]");
}
var remainingIds = new HashSet<string>[idNodes.Length];
for (var ctr = 0; ctr < idNodes.Length; ctr++)
{
remainingIds[ctr] = new HashSet<string>(lines.Select(line => line.Id));
}
foreach (var line in lines)
{
lineNode.InnerText = line.Contents;
lineNumberNode.InnerText = line.Number.ToString();
for (var ctr = 0; ctr < idNodes.Length; ctr++)
{
var idIndex = random.Next(0, remainingIds[ctr].Count);
var id = remainingIds[ctr].ElementAt(idIndex);
remainingIds[ctr].Remove(id);
idNodes[ctr].InnerText = id;
}
var xmlWriterSettings = new XmlWriterSettings()
{
Indent = true,
IndentChars = "\t",
NewLineChars = "\n"
};
using (var xmlWriter = XmlWriter.Create(Path.Combine(destinationPath, line.Id + extension), xmlWriterSettings))
{
//.........这里部分代码省略.........