Your original code was almost fine. You just need to remove the parentheses around the parameter. Dapper will insert those for you:
await connection.ExecuteAsync(
"DELETE FROM my_data_table WHERE somedata IN @data",
new { data = datalist.Select(a => a.dataitem1).ToArray() },
trans);
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…