我一直在用
mail -s "here is a log file" "person@example.com" < log/logfile.log
Run Code Online (Sandbox Code Playgroud)
过去常见的标题:
User-Agent: Heirloom mailx 12.4 7/29/08
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Run Code Online (Sandbox Code Playgroud)
但现在文件更长我得到非名字附件因为这个:
User-Agent: Heirloom mailx 12.4 7/29/08
MIME-Version: 1.0
Content-Type: application/octet-stream
Content-Transfer-Encoding: base64
Run Code Online (Sandbox Code Playgroud)
所以如果一切都失败了,请查看手册man mail......
NAME
mailx - send and receive Internet mail
SYNOPSIS
mailx [-BDdEFintv~] [-s subject] [-a attachment ] [-c cc-addr] [-b bcc-addr] [-r from-addr] [-h hops]
[-A account] [-S variable[=value]] to-addr . . .
Run Code Online (Sandbox Code Playgroud)
这些选项都没有用,所以我怎么强迫Content-Type: text/plain?
我正在尝试找出如何最好地使用图表报告,然后是表示相同数据集的表.我需要克服摘要的定位在底部,所以打算使用子报表和table-subreports.我正在一个细节带中试验两张桌子和一张图表.
如果我将datasourceexpressionfor 设置为$P{REPORT_DATA_SOURCE}仅显示图表数据(可能是第一个子报表类型项)并且表是空的.似乎数据只能消耗一次?
如果我使用数据集查询数据库它可以工作,但它会执行三次查询,每个表/图表执行一次.这将是一个巨大的开销.
显然我没有这样做,但我找不到任何一次使用同一数据集的例子.
我在asp.net核心mvc中写了一个webhook,调用者发布了一些json.但Content-Type设置为application/vnd.myget.webhooks.v1+json.我只想把这个内容类型映射到JsonInputFormatter.
我这样做了,但想知道是否有更好的方法:
services.AddMvc( mvcConfig =>
{
var formatter = new JsonInputFormatter();
formatter.SupportedMediaTypes.Add(
new MediaTypeHeaderValue("application/vnd.myget.webhooks.v1+json") );
mvcConfig.InputFormatters.Add( formatter );
});
Run Code Online (Sandbox Code Playgroud) 我有一个包含多个值的非正常字段,因为它是Xml数据,直到现在才打算查询.MySQL能否将此xml列拆分为多行?
表
NameA | <Xml><Values<Value>1</Value><Value>2</Value><Value>3</Value></Values></Xml>
NameB | <Xml><Values<Value>1</Value><Value>2</Value></Values></Xml>
NameC | <Xml><Values<Value>1</Value><Value>2</Value><Value>3</Value><Value>4</Value></Values></Xml>
Run Code Online (Sandbox Code Playgroud)
我想要
NameA | 1
NameA | 2
NameA | 3
NameB | 1
Run Code Online (Sandbox Code Playgroud)
像这样的MSSQL/TSQL解决方案
SELECT
I.Name,
Value.value('.','VARCHAR(30)') AS Value
FROM
Item AS I
CROSS APPLY
Xml.nodes('/Xml/Values/Value') AS T(Value)
WHERE
I.TypeID = 'A'
Run Code Online (Sandbox Code Playgroud)
但在MySQL中,我只能得到
NameA | 123
NameB | 12
NameC | 1234
Run Code Online (Sandbox Code Playgroud)
同
SELECT
I.`Name`,
ExtractValue(Xml,'/Xml/Values/Value') AS ListOfValues
FROM
Item AS I
WHERE
I.TypeID = 'A'
;
Run Code Online (Sandbox Code Playgroud)
有什么优雅的方法可以在MySQL中拆分xml吗?
类似的还有这与正确的输入和输出类型涉及几个问题是这样.我的问题更多的是正确的做法,方法命名,选择参数类型,事故等维护中的唤醒IEnumerable.
Linq几乎所有地方都处理,IEnumerable而这不是它,但它也引入了一些我们称之为延迟执行的异类.现在,当我们认为最好的想法是采用最基本的类型时,我们可能在设计我们的方法(特别是扩展方法)时出错了.所以我们的方法看起来像:
public static IEnumerable<T> Shuffle<T>(this IEnumerable<T> lstObject)
{
foreach (T t in lstObject)
//some fisher-yates may be
}
Run Code Online (Sandbox Code Playgroud)
显而易见的危险是当我们将上述功能与懒惰混合Linq并且如此易受影响时.
var query = foos.Select(p => p).Where(p => p).OrderBy(p => p); //doesn't execute
//but
var query = foos.Select(p => p).Where(p => p).Shuffle().OrderBy(p => p);
//the second line executes up to a point.
Run Code Online (Sandbox Code Playgroud)
澄清上面这一行 - 我的问题不是关于第二个表达没有得到评估,严重不是.程序员都知道.我担心的是Shuffle到目前为止实际执行查询的方法.查看第一个查询,其中没有任何内容被执行.现在类似于构造另一个Linq表达式(应该稍后执行)时,我们的自定义函数正在播放spoilsport.换句话说,如何让调用者知道Shuffle并不是他们在Linq表达点上想要的那种功能.我希望这一点被带回家.道歉!:)虽然它就像去检查方法一样简单,但我问你们通常如何防御性地编程......
上面的例子可能没那么危险,但你明白了.这是某些(自定义)函数与Linq延迟执行的想法不相符.问题不仅在于性能,还在于意外的副作用. …
以下返回BLOB,如何将此else值转换为VARCHAR来修复我的问题?
SELECT
CASE EnumID
WHEN 1 THEN 'Red'
WHEN 2 THEN 'Green'
WHEN 3 THEN 'Blue'
ELSE EnumID
END AS EnumValue
FROM Table
Run Code Online (Sandbox Code Playgroud)
在MSSQL/TSQL我使用,ELSE CAST([EnumID] AS VARCHAR(100))但MySQL抱怨.
我想要的只是故障转移,如果这个存储过程不知道新的枚举值来管理代码与主数据库与数据仓库数据持久性.
必然是一个明显的答案......
显然问题似乎是使用VARCHAR?刚发现CAST(EnumID AS CHAR(20))在案例开关中工作正常.
叹了...为什么我打扰发布我需要的所有是橡皮鸭谈...
mysql ×2
blob ×1
c# ×1
casting ×1
email ×1
enums ×1
git ×1
github ×1
ienumerable ×1
ireport ×1
linq ×1
linux ×1
mailx ×1
parameters ×1
persistence ×1
pull-request ×1
xml ×1