【发布时间】:2012-01-29 13:40:53
【问题描述】:
我正在专门为 Office 365 编写一个 PowerShell 应用程序,但遇到了一个问题。
var result = pipeline.Invoke();
// close the runspace
runspace.Close();
// convert the script result into a single string
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.AppendLine("<----------------Results---------------->");
foreach (var item in result)
{
stringBuilder.AppendLine(item.ToString());
}
现在,一切都很好,直到我得到我的结果。问题是,如果我收到这样的回复:
UserPrincipalName DisplayName isLicensed
----------------- ----------- ----------
johnsonadmin@johnsoncom... Jack M***** False
如果我在 Powershell 中运行相同的命令,我会得到相同的结果,但格式会更有条理。而不是说“johnsonadmin@johnsoncom...”,它实际上会给我整个电子邮件地址。
我认为这可能是集合如何自动格式化我的字符串的问题,但我不确定。当我尝试解析电子邮件地址的文本时,这将成为一个大问题;)
任何帮助将不胜感激!
谢谢!
【问题讨论】:
-
涉及的对象有哪些类型? PowerShell 通过表示做了一些常规的事情,但您只是调用 ToString(),回退到该特定对象的 C# ToString 实现。这可能是问题所在。 (另请查看另一条评论中发布的链接)。
标签: c# powershell collections stringbuilder ellipsis